我想在 XCode 6 和 iOS 8 中保留我的应用程序的状态。但是,我能找到的所有信息都是指情节提要和恢复标识符,但我没有使用情节提要。
我确信我可以理解所有这些,如果不是一件主要的事情:我似乎无法在 Xcode 6 中找到视图控制器的恢复 ID 字段。我找到了视图的字段,但是每个教程清楚地表明我必须确保标记控制器,而不是视图!
非常感谢任何帮助:)
提前谢谢
我想在 XCode 6 和 iOS 8 中保留我的应用程序的状态。但是,我能找到的所有信息都是指情节提要和恢复标识符,但我没有使用情节提要。
我确信我可以理解所有这些,如果不是一件主要的事情:我似乎无法在 Xcode 6 中找到视图控制器的恢复 ID 字段。我找到了视图的字段,但是每个教程清楚地表明我必须确保标记控制器,而不是视图!
非常感谢任何帮助:)
提前谢谢
restorationIdentifier
是视图控制器属性以及视图属性。
restorationIdentifier
确定视图控制器是否支持状态恢复的标识符。
此属性指示是否应保留视图控制器及其内容,并用于在恢复过程中识别视图控制器。该属性的值默认为 nil,表示不应保存视图控制器。将字符串对象分配给属性让系统知道应该保存视图控制器。此外,字符串的内容是您识别视图控制器用途的方式。
状态恢复本质上是分级的。我相信你知道,如果你不设置视图控制器的restorationIdentifier
属性,它的视图将不会被保存,即使它的视图的restorationIdentifier
属性被设置了。
更新:
您可以restorationIdentifier
在初始化时以编程方式设置视图控制器:
- (instancetype)initWithNibName:(NSString *)nibName bundle:(NSBundle *)bundle
{
self = [super initWithNibName:nibName bundle:bundle];
if(self)
{
self.restorationIdentifier = @"MyViewControllerID";
}
}
由于您没有使用 Storyboard,因此您无法检查视图控制器的属性。这是restorationIdentifier
显示视图控制器属性的地方。