Gibt es eine Möglichkeit, eine Tabellenkopfansicht (tableHeaderView) in StoryBoard einzufügen (wie wir es früher im Interface Builder getan haben)?
Gibt es eine Möglichkeit, eine Tabellenkopfansicht (tableHeaderView) in StoryBoard einzufügen (wie wir es früher im Interface Builder getan haben)?
Antworten:
Es sieht so aus, als würde man einfach ein Steuerelement an den oberen Rand der Tabellenansicht ziehen. Ich hatte nicht erwartet, dass es so einfach sein würde.
Vor dem Ablegen

Nach dem Ablegen

viewForHeaderInSection:und es wurde die Fehlermeldung "Einschränkungen können nicht gleichzeitig erfüllt werden" angezeigt. (Siehe meine Frage hier: stackoverflow.com/questions/14554051/… )
Sie können dies einfach tun, indem Sie Ihr UIView/ UIImageViewdirekt unter das UITableViewin der Dokumentkontur ziehen (anstelle des Layouts).
Wenn Sie versuchen, das Layout anstelle der Dokumentkontur zu ziehen, UITableViewCellspringt dies zur obersten Handhabung, was frustrierend ist!
Das Ziehen und Ablegen einer Ansicht über die Tabellenansicht funktionierte nur für eine Bildschirmgröße, zumindest in Xcode 11. Auf verschiedenen Bildschirmen war die Größe nicht gut.
Ich habe gerade eine Ansicht erstellt und sie dort hinter der Tabellenansicht im Storyboard belassen. Ich habe ein IBOutlet dafür erstellt:
@IBOutlet weak var audioView: UIView!
Dann habe ich im Tableview-Code Folgendes getan:
func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
return audioView
}
func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
return 142
}
Es funktionierte gut auf allen Bildschirmgrößen.
tableHeaderView.