【发布时间】:2014-04-18 13:49:05
【问题描述】:
我见过许多相互矛盾的答案,似乎取决于具体情况,但我还没有找到适合我的答案。我正在 Storyboard 中构建一个选项卡式应用程序,我想将视图控制器的状态保存在导航控制器内的一个选项卡中。它动态创建了我想在应用关闭时保留的对象(标签和图片)。
到目前为止,我在 AppDelegate.m 中有以下内容:
-(BOOL)application:(UIApplication *)application shouldSaveApplicationState:(NSCoder *)coder {
return YES; }
-(BOOL)application:(UIApplication *)application shouldRestoreApplicationState:(NSCoder *)coder {
return YES; }
在我的 viewController.m 文件中:
-(void)encodeRestorableStateWithCoder:(NSCoder *)coder {
[coder encodeObject:self.view forKey:@"view"];
[super encodeRestorableStateWithCoder:coder]; }
-(void)decodeRestorableStateWithCoder:(NSCoder *)coder {
self.view = [coder decodeObjectForKey:@"view"];
[super decodeRestorableStateWithCoder:coder]; }
我还为 UITabBarController、导航控制器和相关视图控制器分配了 RestorationID。
现在,如果我最小化并恢复,数据会被保留,但如果我停止并使用 xcode 重新启动,它就会丢失。我错过了什么?
【问题讨论】:
标签: ios uiviewcontroller