Ich muss Zeile 1 einer Tabelle in einer Funktion löschen, die ich definiert habe. Um deleteRowAtIndexPath
zu verwenden, müssen Sie einen IndexPath
mit einem Abschnitt und einer Zeile definiert verwenden. Wie kann ich einen Indexpfad wie diesen erstellen?So erstellen Sie NSIndexPath für TableView
Ein Array mit dem int {1} als einzigem Element wird abstürzen; Die NSLog-Nachricht besagt, dass der Abschnitt ebenfalls definiert werden muss.
* Bearbeiten -> Code Zelle in Bezug zu löschen:
NSIndexPath *myIP = [[NSIndexPath alloc] indexPathForRow:0 inSection:0];
NSArray *myArray = [[NSArray alloc] initWithObjects:myIP, nil];
// [self.tableView beginUpdates];
[self.tableView deleteRowsAtIndexPaths:myArray withRowAnimation:UITableViewRowAnimationFade];
// [self.tableView endUpdates];
Danke für die Antwort. Das Programm stürzt jedoch immer noch ab - NSLog meldet: *** Beenden der App aufgrund der nicht abgefangenen Ausnahme 'NSInvalidArgumentException', Grund: '*** - [NSIndexPath indexPathForRow: inSection:]: unerkannter Selektor gesendet an Instanz –
Ich dachte ursprünglich, dass dies der Fall ist ein IndexPath-Problem. Gibt es noch etwas anderes? Scheint, dass ich die Löschung falsch verwenden könnte. –
- [NSIndexPath indexPathForRow: inSection:] ist nicht in meiner Dokumentation. Gibt es eine Antwort, die dokumentierte APIs verwendet? (ich gebe zu, es ist ein bisschen komisch, dass es nicht dort ist. WTH ?!) – Olie