startTime
NSUserDefaultsを使用しておよびendTime
NSDateを保存および取得しようとしています。それらを保存することは問題ではないようです:
self.convertedStringToDate = convertDate
NSLog(@"This should read 16:00: %@", self.convertedStringToDate);
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
[userDefaults setObject:convertDate forKey:@"startDate"];
[userDefaults synchronize];
次に、正しく保存および取得していることを確認するために取得します。
NSDate* temporaryDate = (NSDate*)[userDefaults objectForKey:@"startDate"];
NSLog(@"Now User Defaults, should read 16:00: %@", temporaryDate);
私のNSLogを見ると、すべてが正常です。
2012-07-19 14:38:26.002 app[1973:707] This should read 16:00: 2012-07-19 16:00:00 +0000
2012-07-19 14:38:26.022 app[1973:707] Now User Defaults, should read 16:00: 2012-07-19 16:00:00 +0000
問題は、別の方法で日付を再度取得すると、日付がnullになることです。
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
NSDate *tmpDate = (NSDate*)[userDefaults objectForKey:@"startTime"];
NSLog(@"Retreiving date, should be 16:00: %@",tmpDate);
このログに示されているように:
2012-07-19 14:38:26.107 app[1973:707] Retreiving date, should be 16:00: (null)
誰かアイデアはありますか?また、チェックで日付を取得しないようにしましたが、日付は引き続きnullを返します(これも意味がありません。NSUSerDefaultsはこれらのキーとオブジェクトが格納されているデータベースです)。retained
また、オブジェクトのプロパティを保存しようとしましたが、それでも役に立ちませんでした。私は何が欠けていますか?
編集:愚かなエラーについては、独自のコードを読むことが重要です。