iOS布局列到行

标签 ios autolayout uicollectionview uistackview

我正在开发一个 ipad 应用程序,我需要一些关于一个屏幕布局的帮助:

屏幕必须横向显示 3 列 纵向只有 2 列和下面的 1 行。

在自动布局和 UICollectionView 之间,哪个是最好的方法?如何?

提前致谢^^


编辑 07/25/2016

我非常喜欢 Matt 的提议并且我已经开始实现这个解决方案(2 个 UIStackViews) 但现在我受制于条件限制:

我的 xib 被参数化以显示在景观模拟指标中(不确定它有任何后果,但现在以防万一......)

我已经通过监听 UIDevice 方向更改通知,根据方向(纵向为垂直或横向为水平)设法更新根 UIStackView 轴。

我已将此根 UIStackView 分布属性参数化为“按比例填充”,但 View 显示效果不佳。 在纵向模式下,底部“行” View 的高度太大,而在横向模式下,只能看到子 UIStackView 中的两列(最后一个 View 超出了屏幕的右边缘

最佳答案

the screen have to display 3 columns in landscape and in portrait only 2 columns and 1 row below

只要涉及到列和行,就应该考虑使用 UIStackView。通过将 View 放入 UIStackView 中,您可以轻松地在 Interface Builder 中设计整个界面,甚至可以将包含的 UIStackView 放入 UIStackView 中(例如,将三列放入一行)。您可以使用条件约束/ View 使界面在纵向和横向上有所不同。因此,您所描述的整个行为可能根本不需要代码。

关于iOS布局列到行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38484880/

相关文章:

ios - 如果 View 变得太小,Autolayout 可以隐藏 View 吗?

swift - TableView 内部的 CollectionView

ios - 自定义 UICollectionViewFlowLayout

ios - 我们如何在 UICollectionView 的底部和顶部添加边距?

ios - Swift:动画 UIView 向源移动而不是远离它

ios - 自定义 UIControl( slider )在与交互之前不遵守约束

ios - 当尝试使用 Int.random() 直接将变量设置为随机整数时,为什么我的程序无法正常工作?

ios - 使用 WatchKit 以编程方式设置 UIImage 动画

ios自动布局标签定位

ios - 自动布局约束没有得到尊重