iOS XCode 6 中的状态保存

iOS State Preservation in XCode 6

我想在 XCode 6 和 iOS 8 中保留我的应用程序状态。但是,我能找到的所有信息都涉及故事板和恢复标识符,但我没有使用故事板。

我相信我能理解所有这些,这不是一件大事:我似乎无法在 Xcode 中找到视图控制器恢复 ID 的字段 6. 我有找到了视图的那些,但是每个教程都清楚地表明我必须确保标记控制器,而不是视图!

非常感谢任何帮助:)

提前致谢

restorationIdentifier 是一个视图控制器 属性 也是一个视图 属性.

来自View Controller Class Reference documentation

restorationIdentifier决定视图控制器是否支持状态恢复的标识符。

This property indicates whether the view controller and its contents should be preserved and is used to identify the view controller during the restoration process. The value of this property is nil by default, which indicates that the view controller should not be saved. Assigning a string object to the property lets the system know that the view controller should be saved. In addition, the contents of the string are your way to identify the purpose of the view controller.

状态恢复本质上是分层的。我相信你知道,如果你不设置视图控制器的 restorationIdentifier 属性,它的视图将不会被保存,即使它的视图的 restorationIdentifier 属性 是设置。

更新:

您可以在初始化时以编程方式设置视图控制器的 restorationIdentifier

- (instancetype)initWithNibName:(NSString *)nibName bundle:(NSBundle *)bundle
{
    self = [super initWithNibName:nibName bundle:bundle];
    if(self)
    {
        self.restorationIdentifier = @"MyViewControllerID";
    }
}

由于您没有使用情节提要,因此无法检查视图控制器的属性。这是显示视图控制器的 restorationIdentifier 属性 的地方。