小编Bus*_*sen的帖子

NSUserDefaults保存两个导致崩溃的阵列

最近我正在学习NSUserDefaults,然后做了如下演示:

 NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
 NSMutableArray *activity_array = [NSMutableArray array];
 NSMutableArray *movie_array = [NSMutableArray array];
 [defaults setObject:activity_array forKey:@"activity"];
 [defaults setObject:movie_array forKey:@"movie"];
 [defaults synchronize];
Run Code Online (Sandbox Code Playgroud)

然后我尝试编写以下内容,我将在这篇文章的持续时间内调用"code2":

 NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];
 NSMutableArray *array = [userDefault objectForKey:@"activity"];
 [array addObject:@"123"];
Run Code Online (Sandbox Code Playgroud)

演示仍然有效.
但是当我用以下代码替换"code2"时,演示崩溃了:

 NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];
 NSMutableArray *array = [userDefault objectForKey:@"movie"];
 [array addObject:@"123"];
Run Code Online (Sandbox Code Playgroud)

如您所见,差异是关键.
为什么会崩溃?

nsuserdefaults nsarray ios

1
推荐指数
1
解决办法
394
查看次数

标签 统计

ios ×1

nsarray ×1

nsuserdefaults ×1