Android布局:带有标题的滚动列表

时间:2018-07-20 23:08:46

标签: android android-recyclerview

这不是设计问题,我已经设计了项目。我对如何实现它感到困惑。

我的任务是为Android设计一个视图,该视图具有用户帖子及其下的评论的视图。该帖子包含一些额外的信息和与评论完全不同的设计,但是所有这些都需要像网页一样串联滚动(哦,我多年的网络开发让我着迷... em>)。

我当前的解决方案是将LinearLayout(在视图顶部包含用户的帖子)和RecyclerView(在帖子下方以显示评论)嵌套在垂直{{1 }}。该信息实际上是显示的,但是ScrollView当然会独立于其上方的RecyclerView滚动并破坏视图的功能。

我希望在可能的情况下继续使用LinearLayout

最好的情况是将带有帖子的LinearLayout滚动一定数量,然后由RecyclerView接管。 但是,我不想用200多行丑陋的代码来毒害我的代码库,以实现这一目标,因此,如果要完成此任务很费力,我宁愿寻找替代方法。

1 个答案:

答案 0 :(得分:1)

首先要了解的是:您真的需要RecyclerView,还是更好,您真的需要回收

如果答案为,则处理方法是RecyclerView的{​​{1}}中的两种不同的项目类型(有关更多详细信息,请参见herehere)。 Adapter中已经存在此概念:主要区别在于ListView强制使用View Holder模式。它并不那么复杂,更重要的是,RecyclerView是解决该问题的方式。根据您的UI设计,对于不同类型的注释(纯文本,图像等),您可能还希望具有不同的视图类型。请记住,当RecyclerView中包含RecyclerView时,回收将无法进行,因为其中的所有项目都将被立即绘制以计算父{{ 1}}。

如果答案为,则只需在运行时创建视图并将它们添加到ScrollView中的父视图ScrollView中即可。真的只不过是一个for循环。

更花哨的方法是在用户的帖子中使用LinearLayout,但在这种情况下我看不出任何特殊的优势。