设置常数列数&奇怪的collectionView宽度

时间:2015-07-15 12:42:43

标签: ios uicollectionview

我试图将集合视图中的列数设置为3,无论设备如何。 我在viewDidLoad方法中使用此代码:

let width = CGRectGetWidth(self.collectionView.frame)/3.0
        let layout = self.collectionView.collectionViewLayout as! UICollectionViewFlowLayout
        layout.itemSize = CGSizeMake(width, width)
        layout.minimumInteritemSpacing = 0
        layout.sectionInset = UIEdgeInsetsZero
        layout.scrollDirection = UICollectionViewScrollDirection.Vertical

        print("width:\(width),   collectionViewWidth:\(CGRectGetWidth(self.collectionView!.frame)),   mainViewWidth:\(CGRectGetWidth(self.view.frame))")

我总是只有一列。 print方法返回一些有用的调试信息。他们陈述如下:

宽度:186.666666666667,
 collectionViewWidth:560.0,
 mainViewWidth:320.0

发生了什么事? collectionViewWidth如何比main主要大?设置恒定列数的正确方法是什么?我在Interface Builder中使用约束指定了collectionView的大小,它应该小于mainView。

0 个答案:

没有答案