Objective c NSUserDefaults数组
我需要两个Objective c NSUserDefaults数组,objective-c,arrays,xcode,nsmutablearray,Objective C,Arrays,Xcode,Nsmutablearray,我需要两个NSMutableArray,其中将包含NSString 这些阵列是: ListOFUserNames=[NSMutableArray array]; SituationstoName =[NSMutableArray array]; 我在每个可变数组中有两组不同的字符串 命名后添加到Listofusernames 将情境添加到SituationstoName [ListOFUserNames addObject:AfterNamed]; [SituationstoName ad
NSMutableArray
,其中将包含NSString
这些阵列是:
ListOFUserNames=[NSMutableArray array];
SituationstoName =[NSMutableArray array];
我在每个可变数组中有两组不同的字符串
命名后添加到Listofusernames
将情境添加到SituationstoName
[ListOFUserNames addObject:AfterNamed];
[SituationstoName addObject:Situation];
我正试图用各自的字符串保存用户名列表
和情景名称
NSUserDefaults *something = [NSUserDefaults standardUserDefaults];
[something setObject:ListOFUserNames forKey:@"somedata"];
[something synchronize];
NSUserDefaults *something2 = [NSUserDefaults standardUserDefaults];
[something2 setObject:SituationstoName forKey:@"somedata2"];
[something2 synchronize];
在加载它们的方法中,没有任何结果。
该方法的代码为:
NSUserDefaults *somet = [NSUserDefaults standardUserDefaults];
NSUserDefaults *somet2 = [NSUserDefaults standardUserDefaults];
ListOFUserNames = [somet objectForKey:@"somedata"] ;
SituationstoName = [somet2 objectForKey:@"somedata2"] ;
[somet synchronize];
[somet2 synchronize];
问题是它没有加载保存在可变数组中的字符串
//initialise array
NSMutableArray *listOFUserNames=[[NSMutableArray alloc] init];
NSMutableArray *situationstoName =[[NSMutableArray alloc] init];
//add content in the array
[listOFUserNames addObject:AfterNamed];
[situationstoName addObject:Situation];
(在存储之前,还要检查数组是否包含对象或为空。)
//Store these array in `NSUserDefaults`
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
[userDefaults setObject:listOFUserNames forKey:@"NameData"];
[userDefaults setObject:situationstoName forKey:@"SituationData"];
[userDefaults synchronize];
//Access data where ever you want to be
//(listOFUserNames and situationstoName must be array)
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
listOFUserNames = [userDefaults objectForKey:@"NameData"] ;
situationstoName = [userDefaults objectForKey:@"SituationData"] ;