Вы можете хранить объекты только в NSUserDefaults. Поэтому вам нужно преобразовать массив в NSArray
. Тем не менее, NSArrays также хранить только объекты, так что вам нужно хранить long
значения инкапсулированные в NSNumber
объекта:
//saving
NSUserDefaults *standardDefaults = [NSUserDefaults standardUserDefaults];
NSMutableArray *arrayObj = [[NSMutableArray alloc] init];
long *arr;
arr = new long [10];
for(int i = 0 ; i<10 ; i++) {
[arrayObj addObject:[NSNumber numberWithLong:arr[i]]];
}
[standardDefaults setObject:arrayObj forKey:@"longArray"];
[arrayObj release];
//reading
NSUserDefaults *standardDefaults = [NSUserDefaults standardUserDefaults];
NSArray *arrayObj = [standardDefaults objectForKey:@"longArray"];
long *arr;
arr = new long [10];
for(int i = 0 ; i<10 ; i++) {
arr[i] = [(NSNumber*)[arrayObj objectAtIndex:i] longValue];
}
и как получить его? –