だから私はテーブルビューで行を削除しようとしています。
これが私のコードです:
- (IBAction)done:(UIStoryboardSegue *)segue
{
DetailGodsViewController *detailController = [segue sourceViewController];
NSIndexPath *path = [NSIndexPath indexPathForRow:detailController.row inSection:detailController.section];
[self.tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:path]
withRowAnimation:NO];
[self.listOfGoods deleteGood: detailController.row];
[[self tableView] reloadData];
[self dismissViewControllerAnimated:YES completion:NULL];
}
StoryBoard に ControlViewTable があります。ControlViewTable の行をクリックすると、詳細ビューにジャンプします。その他の情報もあります。行とセクションに関する情報もこの関数に保存します。
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([[segue identifier] isEqualToString:@"ShowGoodDetails"]) {
DetailGodsViewController *detailViewController = [segue destinationViewController];
detailViewController.row = [self.tableView indexPathForSelectedRow].row;
detailViewController.section = [self.tableView indexPathForSelectedRow].section;
detailViewController.good = [self.listOfGoods getGoodAtIndex:detailViewController.row ];
}
詳細ビューには削除用のボタンもあります。クリックすると、関数にジャンプします。
- (IBAction)done:(UIStoryboardSegue *)segue.
しかし、deleteRows では常にクラッシュします。誰か助けてくれませんか?