【发布时间】:2015-05-08 19:23:47
【问题描述】:
我正在尝试创建一个显示相册封面的网格样式视图。我想要每行 3 张专辑封面。棘手的部分是让单元格根据使用的设备适当增加大小,例如iPhone 4s/5/5s/5c/6/6 plus,无论使用什么设备,每行始终显示 3 个项目/单元格。
我从来没有能够做到这一点。我正在考虑像这样手动设置尺寸:
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize {
if DeviceHelper.DeviceType.IS_IPHONE_4_OR_LESS {
return CGSizeMake(115, 140)
} else if DeviceHelper.DeviceType.IS_IPHONE_5 {
return //size
} else if DeviceHelper.DeviceType.IS_IPHONE_6 {
return //size
} else {
return //size
}
}
我有一个帮助器来确定正在使用的设备,我可以从应用程序中的任何位置调用它。但是有没有办法确保无论使用什么设备,每行都始终显示 3 个单元格,并且还显示相同的填充,如下所示:
纵横比限制很有帮助,但这次我无法将它们应用到单元格,因为界面生成器不允许这样做。有没有直接的方法可以做到这一点?
提前感谢您的宝贵时间。
【问题讨论】:
标签: ios swift cocoa-touch uicollectionview uicollectionviewcell