2016-09-29 4 views
2

ich UICollectionViewDelegateFlowLayout in meinem Viewcontroller implementiert haben, und geben Sie Einsätzen mit dem folgenden Code:UICollectionViewDelegateFlowLayout Einsätze nicht funktioniert

func collectionView(_ collectionView: UICollectionView, 
           layout collectionViewLayout: UICollectionViewLayout, 
             insetForSectionAt section: Int) -> UIEdgeInsets { 
    return sectionInsets 
} 

Aber diese Funktion wird nie ausgeführt, wenn ich Haltepunkte zu debuggen verwenden. Da ich den Delegaten der UICollectionView bereits an den ViewController angegeben habe, weiß ich nicht, was schief läuft.

Antwort

5

Um Layouts für eine Sammlung Ansicht festgelegt, innerhalb der collectionViewClass folgendes tun:

1. Umsetzung der Methode getLayout:

func getLayout() -> UICollectionViewLayout 
    { 
     let layout:UICollectionViewFlowLayout = UICollectionViewFlowLayout() 

     layout.itemSize = CGSize(width: 150, height: 150) 
     layout.sectionInset = UIEdgeInsets(top: 25, left: 25, bottom: 25, right: 25) 

     return layout as UICollectionViewLayout 

    } 

2. Satz Eigenschaft von Verfahren in ViewDidLoad:

self.collectionView!.collectionViewLayout = self.getLayout() 
Verwandte Themen