Ios 应用程序关闭时NSNumber属性将变为零
我有一个名为recordingNumber的带有NSNumber属性的singleton对象,我用它来跟踪应用程序中的录制。首次打开应用程序时,recordingNumber设置为零,并在每次将新录制保存到应用程序时递增。当我关闭我的应用程序,然后重新打开时,数字会回到零,并且每一条新的录音都会覆盖一条旧的录音。当应用程序打开和关闭时,如何防止属性变为零?我正在使用核心数据来存储我的所有记录文件-我应该创建一个单独的实体来存储这一个值吗Ios 应用程序关闭时NSNumber属性将变为零,ios,Ios,我有一个名为recordingNumber的带有NSNumber属性的singleton对象,我用它来跟踪应用程序中的录制。首次打开应用程序时,recordingNumber设置为零,并在每次将新录制保存到应用程序时递增。当我关闭我的应用程序,然后重新打开时,数字会回到零,并且每一条新的录音都会覆盖一条旧的录音。当应用程序打开和关闭时,如何防止属性变为零?我正在使用核心数据来存储我的所有记录文件-我应该创建一个单独的实体来存储这一个值吗 @property (nonatomic) NSNumbe
@property (nonatomic) NSNumber * recordingNumber;
有很多方法可以做到这一点,最简单的方法是创建一个plist,其中可以包含数字和其他应用程序设置。当应用程序打开时,plist将以默认值读取或创建,并且每次更新或关闭应用程序时都会保存这些值
您也可以在核心数据中创建一个单独的表来包含该数字,但如果表结构实际上需要一个表来包含历史摘要(如MTD month to date和YTD totals),则这样做会有些过分 要在应用程序实例之间保留少量数据,可以将数据存储在NSUserDefaults中: 要保存数据,请执行以下操作:
[[NSUserDefaults standardUserDefaults] setObject:self.recordingNumber forKey:@"recordingNumber"]
[[NSUserDefaults standardUserDefaults] synchronize];
在应用程序启动中,从NSUserDefaults读回此内容
self.recordingNumber = [[NSUserDefaults standardUserDefaults] objectForKey:@"recordingNumber"]
你能演示一下存储属性是如何工作的吗?是否声明了NSN编号?也就是说,'YadiaYaDa',YaDaNaseNo.ByeBeNeByBi认为你必须考虑使用NSULDERDES。你不能只算你的录音吗?啊,所以关闭应用程序你就意味着退出它。没有主动辞职,对吗?@quellish是的,如果我不清楚,很抱歉。