【发布时间】:2016-08-27 13:48:12
【问题描述】:
我的目标是拥有一个带有多个包含 RecyclerViews 的子 CardViews 的 NestedScrollView。
我当前的 xml 看起来像这样:
<CardView>
<RecyclerView/>
</CardView>
<CardView>
<RecyclerView/>
</CardView>
</NestedScrollView>
如果我在 RecyclerViews 上将 nestedScrollViewEnabled 设置为 false,一切似乎都按预期工作。但是,recyclerviews 中的行没有被回收。调用layoutManager.findFirstVisibleItemPosition() 总是返回0,而layoutManager.findLastVisibleItemPosition() 总是返回列表中最后一项的位置。
有什么建议吗?
【问题讨论】:
-
“没有被回收” - 不明白
-
好像列表总共有30行,那么30行就膨胀了。它应该增加屏幕上可见的行数。在我的情况下,应该只充气 6 行,并在滚动时“回收”;如果我删除nestedScrollView 就是这种情况
-
这个问题的运气好吗??
-
当回收器视图位于另一个可滚动布局中时,它不会按设计回收视图(这很可能是设计的限制,因为 recyclerView 不再位于滚动控制,并且 ScrollView 或 NestedScrollView 不会与 RV 对话以告知其滚动/可见性情况。然后 RV 采用这种行为。我通常建议人们避免在 ScrollViews 中使用 RV,除非它们非常小房车。
标签: android android-recyclerview nestedscrollview