【发布时间】:2020-06-30 09:43:36
【问题描述】:
目标
当用户尝试滚动回收站视图时,外部视图(白色视图)应向上滚动(或展开)以显示更多回收站视图。
到目前为止我所做的尝试
嵌套滚动视图:我将白色视图放置在嵌套滚动视图中。这导致回收器视图在滚动时获得优先权。所以结果是回收器视图首先滚动到列表的末尾,然后白色视图向上滚动以显示更多回收器视图。我在嵌套滚动视图和嵌套滚动视图的线性布局上尝试了一些设置 isFocusable 和 isFocusableOnTouch。
在滚动回收器视图时转换白色视图的 Y:在这里,我在回收器视图上设置了滚动监听器,当滚动视图时,我还
translatedY的白色查看dy。这几乎达到了我想要的效果。但是当回收器视图缓慢滚动时,回收器视图中的项目会出现“故障”(跳转位置不规则)。
这背后的代码:
var yPos = 200
recyclerView.addOnScrollListener(object : OnScrollListener() {
override fun onScrolled(recyclerView: RecyclerView, dx: Int, dy: Int) {
super.onScrolled(recyclerView, dx, dy)
yPos -= dy
if (yPos >= 0)
whiteView.animate().translationY(yPos).duration = 0
}
}
【问题讨论】:
标签: android android-recyclerview android-scrollview android-nestedscrollview