1

電話すると

NSDate *now = [[NSDate alloc] init]; 

現在の日付と時刻を取得するために、次のように確認します。

NSLog(@"Date now: %@", now);

出力される日付は過去 1 時間です。

2010-10-08 12:04:38.227 MiniBf[1326:207] 現在: 2010-10-08 11:04:38 GMT

タイムゾーンが間違って設定されている可能性がありますか?

ありがとう!

マイケル

4

4 に答える 4

1

iOS 4.1 デバイスで実行されている DatePicker での動作を確認しましたが、iOS 4.0 以前では発生しません。実際に同じバグであるかどうかは確認できません。

ただし、そのコードを < 4.1 で実行して、日付/サマータイム/4.1 に関する Apple のバグに関連しているかどうかを確認することをお勧めします。次に、その特定のバージョン/日付の修正をハックするか、それを修正して 4.1 デバイスをサポートしない SDK の次のリリースを待つかを決定する必要があります...

私が話しているバグは、夏季期間 (2010 年: 3 月 28 日 - 10 月 31 日) 内の日付を渡すときにのみ発生すると信じています。

于 2010-11-15T16:48:52.877 に答える
0

NSDateFormatterを使用して、日付をローカライズします。

NSLog(@"%@",[NSDateFormatter localizedStringFromDate:[NSDate date] dateStyle:NSDateFormatterShortStyle timeStyle:NSDateFormatterShortStyle]); 
于 2010-10-08T15:29:19.600 に答える
0

iPhoneシミュレータのタイムゾーンが間違っている可能性があります。ホームボタンを押して、settings.appに移動し、修正します;)

于 2010-10-08T13:32:19.403 に答える
0

NSDate を使用 *now = [NSDate date];

私はそれを使用しており、完璧な結果をもたらしています。

于 2010-10-08T12:22:27.957 に答える