2011-01-14 49 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,添加您的對象,然後在設置新的陣列回來。

相關問題