Registrieren Sie mehrere zusätzliche Header-Ansichten in derselben UICollectionView über Storyboards

8

Ich habe also eine UICollectionView, die ich verwenden möchte, um mehrere UICollectionViewCells und verschiedene Header anzuzeigen, abhängig vom Status des Benutzers. Das Problem ist, dass ich scheinbar nicht mehrere UICollectionResuableView (Header) Ansichten innerhalb des Storyboards registrieren kann. Wenn ich versuche, einen als Fußzeile zu registrieren und ihn als Kopfzeile zu verwenden, stürzt die App ab. Ich sehe auch nirgendwo im Storyboard die Anzahl der Abschnitte, die das Problem lindern würden. Im Moment muss ich mehrere UICollectionViews verwenden und die Sammlungsansicht, die ich anzeigen möchte, basierend auf der benötigten Kopfzeile ein- / ausblenden. Gibt es eine bessere Möglichkeit, dies zu tun, oder eine Möglichkeit, mehrere Header-Ansichten in derselben UICollectionView im Storyboard zu registrieren?

    
CA Bearsfan 03.10.2015, 20:16
quelle

1 Antwort

11

Sie können nicht mehr als eine Kopfzeile in einem UICollectionView in einem Storyboard registrieren, aber Sie können eine beliebige Anzahl von ihnen im Code registrieren. Sie sollten beliebig viele Header in NIB-Dateien erstellen (eine Nib pro Header, wobei der Header das Objekt auf der obersten Ebene ist) und sie in viewDidLoad für Ihre Collection-View-Instanz registrieren.

Sie würden dies mit der registerNib:forSupplementaryViewOfKind:withReuseIdentifier: method .

    
Charles A. 03.10.2015, 20:19
quelle