在CoreData中,我有一些實體的數據圖,每個對象都在視圖控制器中填充,在一個定義的屏幕上,我想彈出一些(> 1)對象返回到定義屏幕。popToViewController引發「斷言失敗」消息,該如何解決?
我試圖與這些行的代碼以彈出視圖控制器出導航堆棧的:
ObjectA *objectA = objectD.objectC.objectA;
NSLog(@"objectA name: %@", objectA.name);
MyViewController *controller = [[MyViewController alloc] initWithNibName:@"MyViewController" bundle:nil withObjectA:objectA];
[self.navigationController popToViewController:controller animated:YES];
[controller release];
的對象A,對象B,objectC,objectD是從我的數據圖的所有對象(用反向關係,我可以從objectD通過objectC查詢後面的對象A)
以下錯誤消息引發:
Assertion failure in -[UINavigationController popToViewController:transition:], /SourceCache/UIKit_Sim/UIKit-984.38/UINavigationController.m:1807
有兩個問題在這裏:
- 如果兩個對象不同,他們是怎麼來的同名的?反向關係無法取回我用來初始化MyViewController的objectA?
- 你通常如何做popToViewController?我怎樣才能實現保存/加載我的導航控制器的當前狀態,以便當應用程序退出時,我可以重新加載導航控制器?什麼是最佳實踐?
是的,謝謝Ole,我剛剛意識到:-s愚蠢的我:( – 2010-03-08 12:11:35
我有另一個問題,當用戶退出應用程序時,有什麼策略保存/加載使用導航控制器的應用程序的配置? – 2010-03-08 12:26:19
您應該在其他帖子中提出其他問題 – 2010-03-08 14:27:57