Ausgabe
Ich versuche, Zeile/Zelle zur Tabellenansicht hinzuzufügen, aber vor [Table endUpdates]; … App stürzt mit Fehler ab:
* Assertionsfehler in -[UITableView _endCellAnimationsWithContext:], /SourceCache/UIKit/UIKit-2372/UITableView.m:909 * Beenden der App aufgrund nicht erfasster Ausnahme „NSInternalInconsistencyException“, Grund: „Versuch, Zeile 33 in Abschnitt 0 einzufügen, aber dort sind nur 33 Zeilen in Abschnitt 0 nach dem Update’
-(IBAction)createTask
{
Data *sharedManager = [Data sharedManager]; //singleton class
[Table beginUpdates];
[Table insertRowsAtIndexPaths:[NSArray arrayWithObject:
[NSIndexPath indexPathForItem:
[sharedManager._NAME count] inSection:0]]
withRowAnimation:UITableViewRowAnimationNone];
// sharedManager._NAME is NSMutableArray wich consists names for cells
[Task_handler createTask]; // adds objects to NSMutableArray's
// (like names for cels and so on)
[Table endUpdates];
[Table reloadData];
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
Data *sharedManager = [Data sharedManager];
NSLog(@"numberOfRowsInSection : %d",[sharedManager._NAME count]);
return [sharedManager._NAME count];
}
Danke im Voraus.
Lösung
Der Absturz wurde behoben, indem der Code geändert wurde in:
Data *sharedManager = [Data sharedManager];
[Table beginUpdates];
[Table insertRowsAtIndexPaths:[NSArray arrayWithObject:
[NSIndexPath indexPathForItem:
[sharedManager._NAME count] inSection:0]]
withRowAnimation:UITableViewRowAnimationNone];
[Task_handler createTask];
[Table endUpdates];
Beantwortet von – Hariz Hent
Antwort geprüft von – Mildred Charles (FixError Admin)