Похоже, что вам нужно будет архивировать массив, либо с NSKeyedArchiver
, либо с NSArchiver
. Если вы первый архив массив в объект NSData:
NSData *data = [NSKeyedArchiver archivedDataWithRootObject:myArray];
Вы можете хранить эти данные в NSUserDefaults так:
[[NSUserDefaults standardUserDefaults] setObject:data forKey:@"myArray"];
Для загрузки массива, используйте:
NSData *data = [[NSUserDefaults standardUserDefaults] objectForKey:@"myArray"];
NSArray *myArray = [NSKeyedUnarchiver unarchiveObjectWithData:data];
Если вы хотите использовать NSMutableArray, то просто замените любые NSArray
вхождения в приведенном выше коде NSMutableArray
. OR Вы можете просто NSMutableArray *myMutableArray = [myArray mutableCopy]
предоставить вам NSMutableArray для работы.
Но тогда, если вы собираетесь сделать это совместимым с NSCoding, почему бы просто не архивировать его в файл?
Документация, которая заставляла меня думать, что вам понадобится использовать архиватор, - here, чтобы вы могли проверить себя.
Что такое код для загрузки массива? –
Исправлен мой ответ, чтобы показать, как загрузить. –
Что делать, если я хочу использовать NSMutableArray? –