Recycler View作为滚动视图的一部分

时间:2015-03-10 01:39:30

标签: android scrollview android-recyclerview

我正在开发一款具有非常类似于Play商店的用户界面的应用。它被组织为一个在另一个之上的多个面板。首先它有一个包含照片的面板。在它下面有另一个面板包含一些文本和自定义背景颜色。在它之下它有另一张照片,最后它有一个垂直方向的线性布局,包含在运行时动态填充的很长的小视图列表。我自然而然地在Scroll View中拥有了这一切。

问题?线性布局的动态填充需要很长的处理器时间,并使我的应用程序在这些内部视图通胀期间无响应。所以我想用Recycler View替换线性布局。而且表现非常好!

所以?嗯......不是一切都那么棒。我无法滚动Recycler View,因为它在Scroll View中。如果我删除滚动视图然后我无法滚动整个视图(有些东西不适合屏幕)。

解决此问题的最佳方法是什么?

2 个答案:

答案 0 :(得分:3)

由于双重滚动问题,建议不要在RecyclerView内使用ListViewScrollViewRecyclerView非常强大,并准备接收页眉,页脚等。我认为没有理由为什么整个布局不能在RecyclerView内而不是ScrollView

ViewHolder实现可以包含根据下一步应该扩展不同布局的逻辑。

伪代码:

即。

if(currentAdapterItem == sectionA){
    useLayoutA();
} else{
    useLayoutB();
}

答案 1 :(得分:0)

只需使用NestedScrollView代替普通ScrollView即可。它很好地处理嵌套滚动。