我试图制作一个能在UICollectionView中显示图像的应用,每行必须有3张图片。我尝试了不同的方式,例如将整个视图宽度除以3,但它不适用于iPhone 6+以外的设备。无论如何,我可以做到这样能够。我想要做的一个例子是instagrame时间轴或照片在3x网格中的建议照片。
答案 0 :(得分:0)
你有正确的想法,取整个宽度并除以3.你必须在代码中找到屏幕尺寸。
class CollectionViewController: UICollectionViewController, UICollectionViewDelegateFlowLayout {
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize {
let width = collectionView.frame.width
let size = CGSize(width: width, height: 50)
return size
}
}
您可能还必须使用minimumInteritemSpacingForSectionAtIndex
和insetForSectionAtIndex
来完全按照您希望的方式获取尺寸和边距。