Ich habe ein UICollectionView
. Ich möchte einen Header hinzufügen. Mein Header wäre nur ein UILabel
. Ich habe:eine einfache UIView als Header UICollectionView
1) ausgewählt "Section Header" als Sammlung Ansicht Zubehör im IB.
2) erstellt eine Sammlung wiederverwendbare Ansicht im IB, auf der Seite, erklärt, wie collectionViewHeader
.
3) hinzugefügt diese Zeilen:
- (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView viewForSupplementaryElementOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath
{
if (kind == UICollectionElementKindSectionHeader) {
return collectionViewHeader;
}
return nil;
}
Aber sie sind nie genannt.
Habe ich eine Klasse erstellen, müssen nur für das Etikett, um
[self.collectionView registerClass:[UICollectionReusableView class] forSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:@"header"];
zu benutzen?
Warum ist es nicht so einfach wie die UITableView
, wo man einfach per Drag-and-Drop wollen was auch immer Header Sie? Die Dinge sind so mit UICollectionView
kompliziert ...
Dankten ändern für deine Antwort. Leider wird der collectionView: viewForSupplementaryElementOfKind: atIndexPath nicht aufgerufen. Und wissen Sie, wie Sie Ihrer YourOwnSubClass eine Feder hinzufügen? –
dann hast du vielleicht vergessen dich selbst als Delegierten zu definieren? Was meinst du? eine Feder als Unteransicht hinzufügen? oder initialisiere YourOwnSubClass von der Nib? – Raz
Delegate ist gesetzt, alles andere funktioniert gut:/Ich meine YourOwnSubClass von Nib initialisieren, da es eine UICollectionReusableView ist. –