== EDITED 12. Oktober 2016 ==
Sie sollten nicht die Header-Ansicht aus der Warteschlange entfernt. haben stattdessen eine Ansicht Eigenschaft und ordnen diese Ansicht die headerview für Ihre Tableview zu sein:
class SomeViewController: UIViewController {
// MARK: - Outlets
@IBOutlet var tableView: UITableView!
// MARK: - Properties
var headerView: UIView!
// MARK: - Lifecycle Methods
override func viewDidLoad() {
super.viewDidLoad()
headerView = HeaderView()
tableView.headerView = headerView
}
}
== ORIGINAL ANTWORT - NICHT AUF DIE FRAGE ==
Sie nicht die headerview auf viewDidLoad setzen sollten . Erstellen Sie stattdessen den Header im Delegat, und geben Sie ihn zurück (im folgenden Code wird davon ausgegangen, dass Sie über einen Abschnitt verfügen).
WICHTIG: Sie müssen dequeueReusableHeaderFooterViewWithIdentifier
NICHT dequeueReusableCellWithIdentifier
func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
let headerView = tableView.dequeueReusableHeaderFooterViewWithIdentifier("HeaderView") as! HeaderView
return headerView
}
tableHeaderView versteckt rufen, wenn UITableView Scrollen? Hast du UITableView in scrollView? – Hasya
Lassen Sie HeaderView = TableView.dequeueReusableCellWithIdentifier ("HeaderView") als! HeaderView Was bedeutet das, dass Sie Zelle als Header-Ansicht aus der Warteschlange entfernen? –
Möglicherweise müssen Sie die Delegate-Methode 'viewForHeaderInSection' verwenden, um den Header dynamisch zurückzugeben – vadian