我需要实现一个StaggeredGrid视图,如下所示:
项目将动态添加,因此必须可滚动(作为一个整体)并回收视图。
我见过经典交错网格的解决方案,包括2列和不同高度的项目,但似乎没有一个能够处理跨越2列的项目。
我已阅读有关新RecyclerView的帖子,这似乎更灵活,但似乎我必须实现我自己的LayoutManager,因为我对Android相对较新,看起来有点令人生畏。
您认为最好的方法是什么?
答案 0 :(得分:0)
我有类似的要求。我调整了视图的大小以占用额外的空间。我使用的逻辑是:让每个块具有固定高度h,如果任何块具有其高度H使得H%h!= 0然后增加块的高度,其余为H%h,使得它变为倍数h
例如,如果你将每个块的高度固定为10dp,如果块有5,则将其增加到10.如果块有31,则将其增加到40,即使高度为10的倍数。 要增加高度,您应该在视图中添加一个带有白色背景的空视图,以使其看起来是空白空间而不是块的一部分