私はスライド可能なtableViewセルで、セルには行を削除するボタンがあります。行を削除するメソッド内にこのコードがあります。行の内容は DataSource から正しく削除されますが、tableView の非表示と再読み込みに問題があります。これが私のコードです:
- (void)deleteElementAtIndexPath:(NSIndexPath *)indexPath {
[dateTableView beginUpdates];
NSUserDefaults *user = [NSUserDefaults standardUserDefaults];
listTitles = [[NSMutableArray alloc] init];
listTitles = [[user objectForKey:@"listTitles"] mutableCopy];
[listTitles removeObjectAtIndex:indexPath.row];
[user setObject:listTitles forKey:@"listTitles"];
[user synchronize];
[dateTableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
[dateTableView endUpdates];
[dateTableView reloadData];
}
私のクラスにはデリゲートと dataSource プロトコルがあります。これも私のデリゲートメソッドです:
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
NSLog(@"reloading...numberofsection");
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
NSLog(@"reloading...numberofrowsinsection");
return [listTitles count];
}