NestedScrollView のスクロール位置を検出する方法|Android Kotlin
メモ帳アプリ『CountablePad』の対応で、現在のスクロール位置に応じて見た目を変化させる(ヘッダをドロップシャドウさせる)デザイン検討を行いました。
プログラミング
NestedScrollView の現スクロール位置は、以下のリスナー setOnScrollChangeListener で検出できるのですが、
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
nestedScrollView
.setOnScrollChangeListener { v, scrollX, scrollY, oldScrollX, oldScrollY ->
// TODO
}
}
この方法では「Android 6.0」以上でしか実現できません。
今やそれで十分なのかもしれませんが、『CountablePad』は「Android 5.0」以上をサポートしているので、別の方法が必要でした。
解決
最終的に実現したのは、以下の方法です(これは知らないと嵌る、ちょっとした罠だと思います)。
この記事が参加している募集
この記事が気に入ったらサポートをしてみませんか?