前段时间我升级了xcode并发现了故事板设计的一些变化。所以之前,我只是使用UICollectionViewCell创建UICollectionView控制器。我在其上设置了单元格的宽度和高度以及单元格中的所有子项目。所以,当我在不同的iphone上运行app时,它总是有不同的大小,但是在单元格之间有相同的空间。它还调整了细胞和内容的大小。查看Iphone5S和iphone6
的屏幕截图
但是现在,使用相同的设置,结果不一样
Sa U可以看到iphone5S和Iphone6中的单元格之间的空格不同。那么如何为单元格之间的空间设置常规大小,并为不同的iphone设置更大的单元格。我的应用仅适用于带有纵向模式的Iphone
答案 0 :(得分:2)
您可以这样做:
CGFloat margin = 10;
int itemsPerRow = 3;
CGFloat itemSideSize = ([[UIScreen mainScreen] bounds].size.width - itemsPerRow * margin) / 2;
[(UICollectionViewFlowLayout *)self.collectionView.collectionViewLayout setItemSize:CGSizeMake(itemSideSize, itemSizeSize)];
[(UICollectionViewFlowLayout *)self.collectionView.collectionViewLayout setMinimumInteritemSpacing:margin];
[(UICollectionViewFlowLayout *)self.collectionView.collectionViewLayout setMinimumLineSpacing:margin];
[(UICollectionViewFlowLayout *)self.collectionView.collectionViewLayout setSectionInset:UIEdgeInsetsMake(margin, margin, margin, margin)];