Какое содержимое массивов? Хотя NSUserDefaults может хранить массивы, он работает только для массивов, содержащих NSData, NSString, NSNumber, NSDate, NSArray или NSDictionary. Если в вашем массиве есть что-то еще (пользовательские объекты или другие объекты какао, кроме упомянутых выше), вы не можете просто поместить его прямо в NSUserDefaults.
Если предположить, что ваши объекты правильно, вы можете хранить массив, делая
[[NSUserDefaults standardUserDefaults] setObject:yourArray forKey:@"aKey"];
Вы можете получить его обратно снова с arrayForKey: метод. Обратите внимание, что когда вы это сделаете, он больше не будет измененным массивом: вы можете вызвать mutableCopy в возвращаемом массиве, чтобы получить изменчивый. Кроме того, если вы измените массив после сохранения в NSUserDefaults
, ваши изменения не будут отображаться в настройках приложения.
Если у вас есть массив объектов, которые не будут входить в NSUserDefaults (т. Е. Не в списке выше), все не потеряно: вам нужно посмотреть в NSCoding and archiving.