Android-StickyNavLayout
Android-StickyNavLayout copied to clipboard
上拉后,下拉到底部 上面有空白
上拉后,下拉到底部 上面有空白条


这时因为这里onNestedPreScroll处理下拉时,发生了scrollY越界,在showTop时,应当判断当前dy是否超过了scrollY的范围
以下是修复代码,我拿kt写的
override fun onNestedPreScroll(target: View, dx: Int, dy: Int, consumed: IntArray) {
printStack()
val hiddenTop = dy > 0 && scrollY < mTopViewHeight
val showTop = dy < 0 && scrollY >= 0f && !target.canScrollVertically(-1)
if (hiddenTop) {
scrollBy(0, dy)
consumed[1] = dy
}
if (showTop) {
scrollBy(0, -min(scrollY, abs(dy)))
consumed[1] = -min(scrollY, abs(dy))
}
}