Ich stoße auf ein seltsames Problem, wenn ich einen customHeader für meine tableView erstelle. die Fehler, die ich empfangen habe ist folgendes:Nib muss genau ein Top-Level-Objekt enthalten, das eine UITableViewHeaderFooterView-Instanz sein muss
nib Top-Level-Objekt enthalten muss genau eine, die eine UITableViewHeaderFooterView Instanz sein muss
ich durch meinen Code und xib Datei sowie Beispiele lief, aber ich konnte nicht alles falsch finden irgendwelche Ideen, die ich vermisse?
Der Header Xib mit einer normalen Ansicht erstellt wurde, und dann mit einem Etikett einer Unteransicht wurde die Klasse erstellt mit der folgenden:
CustomTableHeader Klasse:
class CustomTableHeader: UITableViewHeaderFooterView {
static var CustomTableHeaderIdentifier = "CustomTableHeader"
@IBOutlet weak var titleLabel: UILabel!
override awakeFromNib(){
super.awakeFromNib()
self.titleLabel.text = "Header"
}
override func prepareForReuse() {
super.prepareForReuse()
}
}
Viewcontroller Klasse:
class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {
@IBOutlet weak var tableView: UITableView!
override func viewDidLoad() {
super.viewDidLoad()
self.tableView.register(UINib.init(nibName: CustomTableHeader.CustomTableHeaderIdentifier, bundle: nil), forHeaderFooterViewReuseIdentifier: CustomTableHeader.CustomTableHeaderIdentifier)
}
//Other Methods
func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
if let header = tableView.dequeueReusableHeaderFooterView(withIdentifier: CustomTableHeader.CustomTableHeaderIdentifier) as? CustomTableHeader {
header.titleLabel.text = "Section 1"
return header
}
}
Hatte genau dasselbe Problem, danke! – derf26