答案 0 :(得分:1)
您可以通过两种主要方式解决问题:
将ScrollView
与Linear
- 或RelativeLayout
一起使用。然后,您将在代码中添加项目,测量每个项目并在需要时将它们放入新行。这将需要创建一些逻辑,但是可以实现。如果内容超出屏幕高度,ScrollView将负责滚动。这个解决方案的问题在于你没有一个回收机制,当列表变长时会导致内存问题。
使用RecyclerView
! :-D RecyclerView
的一个很棒的功能是,虽然提供了项目列表的标准基于适配器的概念,但它也允许您实现自定义LayoutManager
。创建自己的LayoutManager
实现,根据测量结果对项目进行定位,完成后,RecyclerView
将为您滚动和回收项目! :-D这需要一些时间来适应,特别是如果你没有RecyclerView
的经验,但整个事情应该花费不超过几个小时,并且,在我的拙见,真的值得。
您可以自由选择,但第二种方法更现代,通常更容易实施。一般来说,你应该学会使用RecyclerView
,它可以帮助你做很多事情,并且比你好的List
和GridViews
更快实现,一旦掌握了它。< / p>