0

私は新参者でNSUserDefaultsあり、これを読んでいるほとんどの人にとっておそらく簡単だと思うことを理解するのに苦労しています.

NSUserDefaults次のコードで存在する場合、文字列の可変配列を取得しようとしています:

NSMutableArray *globalAppsArray;

if([[NSUserDefaults standardUserDefaults] objectForKey:@"globalAppsArray"] != nil)
{
    NSLog(@"Array found. Contents: %@", globalAppsArray);        
}
else
{
    globalAppsArray = [[NSMutableArray alloc] initWithCapacity:0];
}

それに新しいデータを追加した後、それを保存したいと思います:

[[NSUserDefaults standardUserDefaults] setObject:globalAppsArray forKey:@"globalAppsArray"];
[[NSUserDefaults standardUserDefaults] synchronize];

アプリを再起動すると、変更可能な配列は問題ありませんが、内容はnull.

誰かが私に欠けているものを教えてもらえますか?

4

2 に答える 2

3

コードを一度確認してください。

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSMutableArray *globalAppsArray = [[defaults objectForKey:@"globalAppsArray"] mutableCopy];
if(globalAppsArray)
    NSLog(@"Array found. Contents: %@", globalAppsArray);
else
    globalAppsArray = [NSMutableArray array];
于 2013-04-23T13:53:53.423 に答える