您的問題是,您沒有以與編輯項目相同的方式添加項目。看看這個:
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
SEGUE你得到這樣的視圖控制器:
AddItemViewController *controller =(AddItemViewController *) navigation.topViewController;
但對於EditItem
SEGUE你得到這樣的:
AddItemViewController *controller =(AddItemViewController *) navigation;
在您的故事板中,AddItem
segue連接到導航控制器,然後連接到您的AddViewController
,但EditItem
segue直接進入AddViewController
。
將EditItem
連接到相同的導航控制器AddItem
連接到應該修復您的問題。
你如何添加欄按鈕項目?我們可以看看你的代碼嗎? – NobodyNada 2014-09-12 17:46:49
當然!這裏是鏈接: https://www.dropbox.com/s/gylo67z2n00yc9i/TableView.zip?dl=0 謝謝! – MdRiduan 2014-09-12 18:07:25