Ich möchte eine Tabellenüberschrift (keine Abschnittsüberschriften) wie in der Kontakt-App hinzufügen, zum Beispiel:
genau so - ein Etikett neben einem Bild über der Tabelle.
Ich möchte, dass die Gesamtansicht scrollbar ist, damit ich diese nicht außerhalb der Tabelle platzieren kann.
Wie kann ich das machen?
iphone
ios
uitableview
Assaf b
quelle
quelle
public override UIView GetViewForHeader(UITableView tableView, nint section) { return headerView; } public override nfloat GetHeightForHeader(UITableView tableView, nint section) { return headerView.Frame.Height; }
Sie können es ziemlich einfach in Interface Builder tun. Erstellen Sie einfach eine Ansicht mit einer Tabelle und legen Sie eine weitere Ansicht auf der Tabelle ab. Dies wird zur Tabellenkopfansicht. Fügen Sie dieser Ansicht Ihre Beschriftungen und Ihr Bild hinzu. Die Ansichtshierarchie finden Sie im Bild unten.
quelle
In Swift :
quelle
Sie können auch einfach NUR eine UIView im Interface Builder erstellen und ImageView und UILabel per Drag & Drop verschieben (damit sie wie Ihr gewünschter Header aussehen) und diese dann verwenden.
Sobald Ihr UIView so aussieht, wie Sie es auch möchten, können Sie es programmgesteuert über XIB initialisieren und zu Ihrem UITableView hinzufügen. Mit anderen Worten, Sie müssen die GESAMTE Tabelle in IB nicht entwerfen. Nur die Header-Ansicht (auf diese Weise kann die Header-Ansicht auch in anderen Tabellen wiederverwendet werden)
Zum Beispiel habe ich eine benutzerdefinierte UIView für einen meiner Tabellenheader. Die Ansicht wird von einer xib-Datei namens "CustomHeaderView" verwaltet und mit dem folgenden Code in meiner UITableViewController-Unterklasse in den Tabellenkopf geladen:
quelle
quelle