我使用以下代码将带有一些数据(图像、字符串、数组等)的类实例保存到我的 NSUserDefaults 中:
NSData *encodedData = [NSKeyedArchiver archivedDataWithRootObject:myClassInstance];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:encodedData forKey:@"myClassData"];
[defaults synchronize];
我这样做是为了在没有互联网连接的情况下使用这些数据。
所有这些数据是否都通过 NSuserDefaults 加载到内存中?或者当我使用它时它会加载:
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSData *encodedData = [defaults objectForKey:@"myClassData"];
最佳答案
当您调用时它将加载
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSData *encodedData = [defaults objectForKey:@"myClassData"];
关于iphone - NSUserDefault内存管理问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14704760/