4

今日が 5 月 6 日火曜日の午後 2 時である場合

event.startDate = [[NSDate alloc] init];
event.allDay = YES;
[dateFormat setDateFormat:EEEE, MMMM dd, yyyy];
NSString* dayStr = [dateFormat stringFromDate:event.startDate];
timeDetails.text = [NSString stringWithFormat:@"%@\nAll day", dayStr];

5月5日月曜日の結果

allDay が設定されていない同じコード

event.startDate = [[NSDate alloc] init];
[dateFormat setDateFormat:EEEE, MMMM dd, yyyy];
NSString* dayStr = [dateFormat stringFromDate:event.startDate];
timeDetails.text = [NSString stringWithFormat:@"%@\nAll day", dayStr];

結果は正しい 5 月 6 日火曜日になります。誰にも手がかりはありますか?

4

2 に答える 2

1

タイムゾーンに関連している可能性があります。ただし、フォーマッターのタイムゾーンを設定しようとしても同じ問題が発生するため、確認できません。さらに重要なことに、NSData を作成し、デフォルトで NSFormatter を使用すると、すべて一致すると想定していました。

于 2014-05-12T03:14:06.973 に答える