2011-01-14 26 views
5

Vui lòng cho tôi biết cách tôi có thể lưu trữ NSMutableArray vào NSUserDefaults.cách lưu trữ NSMutableArray trong NSUserDefaults

Tôi có một mảng được gọi là dữ liệu (NSArray) .Tôi muốn thêm mảng này vào NSMutableArray được gọi là mArray.

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

& muốn để lưu trữ các giá trị trong mArrayNSUserDefaults. Vui lòng cho tôi biết cách tôi có thể lưu trữ & truy xuất lại các giá trị này. mã trên chỉ lưu trữ giá trị cuối cùng không phụ thêm giá trị trong NSUserDefaults.

Cảm ơn

Trả lời

21

Bạn không thể. Xem http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSUserDefaults_Class/Reference/Reference.html, cụ thể:

giá trị trở về từ NSUserDefaults là không thay đổi, thậm chí nếu bạn thiết lập một đối tượng có thể thay đổi như giá trị. Ví dụ: , nếu bạn đặt chuỗi có thể thay đổi làm giá trị cho "MyStringDefault", chuỗi bạn truy xuất sau bằng cách sử dụng stringForKey: sẽ không thay đổi.

Thay vào đó, làm cho một mutableCopy của mảng bạn lấy từ NSUserDefaults, thêm đối tượng của bạn, sau đó thiết lập mảng mới của bạn trở lại.

Các vấn đề liên quan