2017-05-31 47 views
0

UICollectionViewCell s的總是在UICollectionView的邊緣放置的邊緣放置。總有這樣的中間空間。 enter image description hereUICollectionviewCell總是在視圖

是什麼原因呢?我想每行都保留3個項目。但通過這種方式,它只是設置2.如何解決這個問題? 請幫幫我。 由於

UPDATE

let layout = UICollectionViewFlowLayout() 
    layout.scrollDirection = .vertical //.horizontal 
    layout.itemSize = cellSize 
    layout.sectionInset = UIEdgeInsets(top: 1, left: 1, bottom: 1, right: 1) 
    layout.minimumLineSpacing = 1.0 
    layout.minimumInteritemSpacing = 1.0 
    layout.minimumLineSpacing=1.0 

    btncollectionView.setCollectionViewLayout(layout, animated: true) 
    btncollectionView.reloadData() 
+0

看不詳細,看來你'UICollectionView'寬度不能使用此'UICollectionViewCells'寬度3列承受。你爲此設置了正確的寬度和限制嗎? – GIJOW

+0

我添加了一個子視圖與前沿和後沿50 ,,和我的CollectionView所有4條邊設置爲0的約束和我的單元尺寸(自,查看,size.width-100)/ 3 – Randi

回答

0

既適用於水平和垂直滾動的方向,和可變間距細胞

申報數你每行要

let numberOfCellsPerRow: CGFloat = 3 

配置flowLayout轉r安德指定numberOfCellsPerRow

if let flowLayout = collectionView?.collectionViewLayout as? UICollectionViewFlowLayout { 
    let horizontalSpacing = flowLayout.scrollDirection == .vertical ? flowLayout.minimumInteritemSpacing : flowLayout.minimumLineSpacing 
    let cellWidth = (view.frame.width - max(0, numberOfCellsPerRow - 1)*horizontalSpacing)/numberOfCellsPerRow 
    flowLayout.itemSize = CGSize(width: cellWidth, height: cellWidth) 
} 
+0

你可以看到我更新,,我已經設置了這些,但仍然相同 – Randi

+0

'cellSize'的值是什麼? –

+0

寬度=身高= 104.666 – Randi

相關問題