で奇妙な動作を経験していNSUserDefaults
ます。私は最初、AppDelegate.mのユーザーデフォルトに配列を格納しています:
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSArray *weekdayIDs = [defaults objectForKey:@"weekdayIDs"];
if (weekdayIDs == nil) {
weekdayIDs = [NSArray arrayWithObjects:@"su", @"mo", @"tu", @"we", @"th", @"fr", @"sa", nil];
[defaults setObject:weekdayIDs forKey:@"weekdayIDs"];
}
[defaults synchronize];
別のビューコントローラーContentViewController.mで、配列を取得したいと思います。
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSArray *weekdayIDs = [defaults objectForKey:@"weekdayIDs"];
しかし、オブジェクトのない配列を取得しますが、そのcount == 7
。私も使用arrayForKey:
しましたが、同じ結果になりました。ブレークポイントからスクリーンショットを追加しました。
私は定期的に使用してNSUserDefaults
いますが、現在はこれに少しこだわっています。それはおそらくばかげた間違いです、誰かが助けてくれますか?
どうもありがとう!
- アップデート:
また、そもそもNSArrayの初期化に問題があるかもしれないと思いましたが、そのオブジェクトを手動で作成したものに置き換えてもNSString *dwid_su = [NSString stringWithString:@"su"];
機能しませんでした。