問題は、アイテムを編集するのと同じ方法でアイテムを追加していないことです。これを見てください:
if ([segue.identifier isEqualToString:@"AddItem"]){
UINavigationController *navigation = segue.destinationViewController;
AddItemViewController *controller =(AddItemViewController *) navigation.topViewController;
controller.delegate = self;
} else if ([segue.identifier isEqualToString:@"EditItem"]){
UINavigationController *navigation = segue.destinationViewController;
AddItemViewController *controller = (AddItemViewController *)navigation;
controller.delegate = self;
//
NSIndexPath *indexpath = [self.tableView indexPathForCell:sender];
controller.itemToEdit = _items[indexpath.row];
}
AddItemセグエでは、次のようなビュー コントローラーを取得していることに注意してください。
AddItemViewController *controller =(AddItemViewController *) navigation.topViewController;
しかし、EditItemセグエの場合、次のようになります。
AddItemViewController *controller =(AddItemViewController *) navigation;
ストーリーボードでは、AddItemセグエはナビゲーション コントローラーに接続され、次に に接続されますAddViewControllerが、EditItemセグエは に直接移動しAddViewControllerます。
接続EditItem先と同じナビゲーション コントローラAddItemに接続すると、問題が解決するはずです。