2011-01-14 50 views
5

请告诉我如何将NSMutableArray存储到NSUserDefaults中。如何在NSUserDefaults中存储NSMutableArray

我有一个名为data(NSArray)的数组。我想在NSMutableArray中添加这个数组,名为mArray

[mArray addObject:data]; 
[prefs setObject:mArray forkey:@"test"]; 
[prefs synchronize]; 

&要存储NSUserDefaultsmArray值。 请告诉我如何储存&回收这些值。以上代码中的 仅存储上一个值不在NSUserDefaults中追加值。

谢谢

回答

21

你不能。见http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSUserDefaults_Class/Reference/Reference.html,特别是:NSUserDefaults的从返回

值是不可改变的,即使你设置了 可变对象的值。对于 示例,如果将可变字符串 设置为“MyStringDefault”的值,则您以后使用 检索的字符串将是不可变的。

相反,让你从检索NSUserDefaults的阵列中的mutableCopy,添加您的对象,然后在设置新的阵列回来。

相关问题