【问题标题】:How to make a grid layout in iOS?如何在 iOS 中进行网格布局?
【发布时间】:2017-09-28 05:26:43
【问题描述】:
我想在 iOS 应用中制作一种网格布局(不可滚动),类似于:
我可以使用多个UIView 来做到这一点,但这不是一个好的解决方案。如果我使用 `UICollectionView',我相信它会变成可滚动的?我想要固定的网格项目,根据屏幕大小调整它们的大小。
请问有什么指导方针吗?
谢谢!
【问题讨论】:
标签:
ios
objective-c
uitableview
uicollectionview
grid
【解决方案1】:
您应该使用collection view 和scrolling and bouncing disable。
这完全取决于您的 collectionview 的 flowlayout 的项目大小。
您必须根据屏幕大小计算项目大小。
您可以将item size 设置为flowlayout,并可以将flowlayout 与collection view 一起使用。
例如,您可以参考this so post。
【解决方案2】:
如果您只想将固定的 3x2 布局缩放到任何屏幕尺寸,那么多个 UIView 是一个很好的解决方案,这正是您应该做的。
还可以创建一个RestaurantView UIView 子类来配置和显示每个餐厅的图像/评级/标题/描述/等详细信息。
-
如果您希望根据屏幕大小改变餐厅数量,请改用 UICollectionView 和 ResturantCollectionViewCell。