0
votes

I have already tried this

To set :

NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
[userDefaults setObject:mutArr forKey:@"userInfo"];
[userDefaults synchronize];

To get :

NSMutableArray *retrieveArray = [[NSMutableArray alloc] init];
retrieveArray = [[[NSUserDefaults standardUserDefaults] arrayForKey:@"userInfo"] mutableCopy];

Can anyone tell me where am I going wrong?
Thanks.

2
Are you sure while saving the array mutArr not an empty array? - Balu
Yes I checked, it was empty. But now its giving me crash at [[NSUserDefaults standardUserDefaults] setObject:mutArr forKey:@"Key"]; - user3153627
i'm asking while saving data in NSUserDefaults is that array having the data or empty aaray? - Balu
then it will give proper data may be some where else userdefaults data updated by empty array once check it. - Balu
Its giving me crash with log : Attempt to set a non-property-list object - user3153627

2 Answers

1
votes

Please try below code.

For Set :

NSMutableArray *arrCategoryListSet = [[NSMutableArray alloc] initWithObjects:object1, object2, nil];   
[[NSUserDefaults standardUserDefaults] setObject:arrCategoryListSet forKey:@"CategoryList"];
[[NSUserDefaults standardUserDefaults] synchronize];

For Get:

NSMutableArray *arrCategoryListGet = [NSMutableArray arrayWithArray:[[NSUserDefaults standardUserDefaults] objectForKey:@"CategoryList"]];

OR

NSMutableArray *arrCategoryListGet = [[NSUserDefaults standardUserDefaults] objectForKey:@"CategoryList"];
0
votes

Save Array

[[NSUserDefaults standardUserDefaults] setObject:youArray forKey:@"Key"];

Retrive Array

 NSArray *retArray = [[NSUserDefaults standardUserDefaults] objectForKey:@"Array"];