根据各种屏幕尺寸自动布局集合视图

Posted

技术标签:

【中文标题】根据各种屏幕尺寸自动布局集合视图【英文标题】:Auto Layout Collection view according to various screen sizes 【发布时间】:2016-10-09 13:33:36 【问题描述】:

我正在使用集合视图委托和数据源在普通视图控制器中使用集合视图。我正在使用 sizeForItemAtIndexPath 但它不会调整单元格的大小。

let screenSize: CGRect = UIScreen.main.bounds

func collectionView(_collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize

    return CGSize(width: screenSize.width / 3, height: screenSize.width / 3)

使用 autoLayout 为集合视图正确分配了约束。

在 iPhone5 中的外观

应该是什么样子

我知道使用了估计的ItemSize,但我无法使用它,因为这不是 UICollectionViewController。感谢您的建议?

【问题讨论】:

【参考方案1】:

确保:

确认UICollectionViewDelegateFlowLayout。 collectionView 的宽度 = 屏幕的宽度。 单元格的最小间距为零。您可以从 Interface Builder 更改它(选择 collectionView -> 显示大小检查器 -> 将最小间距设置为 0),或通过实现 minimumInteritemSpacingForSectionAt 返回零。

我希望这回答了你的问题。

【讨论】:

以上是关于根据各种屏幕尺寸自动布局集合视图的主要内容,如果未能解决你的问题,请参考以下文章

支持各种屏幕尺寸

如何根据不同的屏幕尺寸测量和布局视图

如何为不同的屏幕尺寸创建具有自动布局的比例视图?

如何通过反应根据屏幕尺寸更改布局

如何使用 Xcode 8 上的自动布局调整对象的大小以适应不同的屏幕尺寸?

iOS - 自动布局与不同屏幕尺寸的不同故事板