ios开发——实用技术篇&数据保存于恢复

时间:2023-03-09 16:07:34
ios开发——实用技术篇&数据保存于恢复

数据保存于恢复

用户操作(输入数据)之后,应用程序退出并且终止之后,当用户再次打开应用的时候还是保持原来的状态

一:在storyBoard中设置恢复标志符

ios开发——实用技术篇&数据保存于恢复

二:在AppDalegate中代理方法

 -(BOOL) application:(UIApplication *)application shouldSaveApplicationState:(NSCoder *)coder
 {
     return YES;
 }

 -(BOOL) application:(UIApplication *)application shouldRestoreApplicationState:(NSCoder *)coder
 {
     return YES;
 }

 - (void)application:(UIApplication *)application willEncodeRestorableStateWithCoder:(NSCoder *)coder
 {
     [coder encodeFloat:2.0 forKey:@"Version"];
 }

 - (void)application:(UIApplication *)application didDecodeRestorableStateWithCoder:(NSCoder *)coder
 {
     float lastVer = [coder decodeFloatForKey:@"Version"];
      NSLog(@"lastVer = %f",lastVer);
 }

三:在ViewController中实现归档相应的方法:

 -(void)encodeRestorableStateWithCoder:(NSCoder *)coder
 {
     [super encodeRestorableStateWithCoder:coder];
     [coder encodeObject:self.txtField.text forKey:kSaveKey];
 }

 -(void)decodeRestorableStateWithCoder:(NSCoder *)coder
 {
     [super decodeRestorableStateWithCoder:coder];
     self.txtField.text = [coder decodeObjectForKey:kSaveKey];
 }

注:这里使用的原理就是归档,如果是一些其他数据的话直接使用归档就可以,这里因为是storyBoard所以使用到了恢复标志符