2017-05-31 3 views
0

setzen meine UICollectionViewCell s immer an den Rändern der UICollectionView. Es gibt immer einen mittleren Raum wie diesen. enter image description hereUICollectionviewCell immer am Rand der Ansicht

Was ist der Grund dafür? Und ich möchte immer 3 Gegenstände pro Reihe behalten. Aber auf diese Weise ist es nur 2. Wie behebe ich dieses Problem? Bitte helfen Sie mir. Dank

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

sucht nicht im Detail, scheint, dass Ihre 'UICollectionView' Breite nicht mit 3 Spalten mit dieser' UICollectionViewCells' Breite leisten kann. Legen Sie die richtige Breite und die richtigen Einschränkungen fest? – GIJOW

+0

Ich habe eine Unteransicht mit führenden und abschließenden 50 hinzugefügt, und meine Collectionview alle 4 Seiten auf 0 Constraints gesetzt und meine Zellengröße ist (self, view, size.width-100)/3 – Randi

Antwort

0

Arbeiten für horizontale und vertikale Scroll-Richtung und variablem Abstand

Declare Anzahl der Zellen möchten Sie pro Zeile

let numberOfCellsPerRow: CGFloat = 3 

konfigurieren flowLayout zu r ender numberOfCellsPerRow angegeben

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

können Sie mein Update sehen ,, Ich habe diese aber immer noch – Randi

+0

was ist der Wert von 'cellSize' gesetzt? –

+0

width = height = 104.666 – Randi

Verwandte Themen