首页 > 其他 > 详细

程序的状态保存和恢复

时间:2014-01-14 19:48:38      阅读:409      评论:0      收藏:0      [点我收藏+]

开启状态保存和恢复
将下列两个方法添加到AppDelegate.m文件的application delegate中
<span style="font-size: 14px;">- (BOOL)application:(UIApplication *)application shouldSaveApplicationState:(NSCoder *)coder
{
    return YES;
}
 
- (BOOL)application:(UIApplication *)application shouldRestoreApplicationState:(NSCoder *)coder
{
    return YES;
}</span>
Restorationldentifier
UIKite 并没有自动存储所有关于应用状态的信息。你需要告诉UIKit你的哪些视图控制器需要参与进去。你要通过给storyboard中这些视图控制器分派一个Restoration Identifier来实现它。任何拥有Restoration ID的内容都会被保护并且恢复。
bubuko.com,布布扣
 
到目前为止这一步,系统只能帮你恢复到具体一个视图控制器,然后重新生成控制器里的对象
 
要让系统知道你需要保存哪些对象,你需要实现两个方法
 
<span style="font-size: 14px;">- (void)encodeRestorableStateWithCoder:(NSCoder *)coder
{
    [super encodeRestorableStateWithCoder:coder];
    [coder encodeObject:self.doorPhoto forKey:@"doorPhoto"];
}
 
- (void)decodeRestorableStateWithCoder:(NSCoder *)coder
{
    [super decodeRestorableStateWithCoder:coder];
    self.doorPhoto = [coder decodeObjectForKey:@"doorPhoto"];
}</span>

当在程序中按下home键的时候,就会调用encodeRestorableStateWithCoder:来保存你想要保存的对象,再下一次打开程序的时候,就会调用decodeRestorableStateWithCoder:来恢复你之前保存好的对象。 

程序的状态保存和恢复

原文:http://www.cnblogs.com/adamleung/p/3512893.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!