Ich implementiere Logik für die Rückgabe bestimmter Zellen in einem Tabellenansichtsaufruf. Welche Vorschläge gibt es, um den Fall "Standard" abzudecken, wenn ich eine switch-Anweisung verwende?Behandeln von Fällen, die nicht in TableView auftreten werden (_: cellForRowAtIndexPath) -> UITableViewCell
Siehe Beispiel hier:
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
switch indexPath.section {
case 0: // CompanyDetailsGeneralTableViewCell
let cell = tableView.dequeueReusableCellWithIdentifier("CompanyDetailsGeneral", forIndexPath: indexPath) as! CompanyDetailsGeneralTableViewCell
// STUFF FOR CompanyDetailsGeneralTableViewCell
return cell
case 1:
let cell = tableView.dequeueReusableCellWithIdentifier("CompanyResources", forIndexPath: indexPath) as! CompanyResourcesTableViewCell
return cell
default:
// Can't reach here (never!) as table has only 2 sections.
return UITableViewCell() // Hack. BEST PRACTICE?
}
}
Unter den Ansätzen, ich habe in Betracht gezogen:
- haupt nicht den Schalter, aber es scheint, für einen Schalter strukturell Beschlag.
- Eine Laufzeitausnahme auslösen. Nicht möglich, da Laufzeitausnahmen in Swift nicht aufregend sind.
- Rückgabe nil - Kann das nicht tun, da diese Funktion kein optionales zurückgibt.
Würde mich über Kommentare und Feedback freuen.
Danke! fatalError ("Unerwarteter Abschnitt \\ (indexPath.section) in TableView") ist es. –