具有不同项目高度和宽度的网格
Posted
技术标签:
【中文标题】具有不同项目高度和宽度的网格【英文标题】:Grid with different item height and width 【发布时间】:2013-09-20 11:51:05 【问题描述】:有人可以帮助我并告诉我这在 android 中是否可行。我需要在我的应用程序中有一个类似 gridview 的小部件,但具有不同的项目高度和宽度,如下所示:
这可能吗?如果可以,我可以用什么来实现。
谢谢
【问题讨论】:
我认为here 和here 你有答案:) 所以你想复制 pinterest 风格? :) @PareshMayani 我认为 pinterest 没有不同的项目宽度,是吗? 【参考方案1】:为此,您需要解决方法,或者您可以说一个名为“AndroidStaggeredGrid”的第三方库
您可以在here查看它
【讨论】:
【参考方案2】:@Darko,
是的,在 Android 中可以这样做。
有很多方法可以实现这一点。正如您所说,GridView 不能用于实现此目的。对于普通用户,这将显示有网格。
方式:
为您可以看到的每个“网格”使用片段,并且每个片段都有自己的布局,可以在网格中显示 2 或 3 个图像(这里也不需要 gridview)。像往常一样使用 ImageView。
如果版面设计相同,则可以定义具有相同格式的内部设计的单个版面。每行都有图像视图 - 顺便说一句,这是不鼓励的。
每行的每种设计格式的设计布局。将每个特定行膨胀到一个列表(使用自定义适配器)。根据 getView() 中的位置,您可以控制要添加到列表中的行设计。 ListView 内置滚动,所以没问题!
我建议你选择 #1 或 #3。使用片段,您将有更好的控制。
如果你知道任何更好的想法,请分享!
【讨论】:
【参考方案3】:它是交错网格视图
你可以在https://github.com/bulletnoid/StaggeredGridView找到一个实现
【讨论】:
【参考方案4】:可以使用 GridLayout。更多详情见链接。
http://developer.android.com/reference/android/widget/GridLayout.html
【讨论】:
我确实用这一行回答了这个问题:“使用 GridLayout 是可能的”。这正是 OP 提出的问题。以上是关于具有不同项目高度和宽度的网格的主要内容,如果未能解决你的问题,请参考以下文章
如何动态创建图像的拼贴(没有间隙的网格),其中图像具有不同的高度?