0

Tapku Library Calendar に奇妙な問題があります。

Tapku Library Calendar にイベントを表示しています。アメリカ/トロント タイム ゾーンのサーバーから日付を取得しています。すなわち。-500。

私のシステムとカレンダーのタイムゾーンは、設定アプリでカナダのトロントに設定されています。

したがって、問題は、カレンダーが間違った日ビュー (日タイル) で 1 つのイベントを表示する場合です。イベントは 2011 年 11 月 16 日に開催され、17 日にカレンダーに表示されます。

11/16/2011 17:00 -0500

そこで、タイムゾーンをGMTにする解決策を見つけました。

[dateFormatter setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"GMT"]];

上記のトロントのタイムゾーンで正常に動作します。ここで、タイムゾーンをイタリアのローマに設定し、16 日にもそのイベントを表示することを想定していますが、17 日に表示されています。

したがって、問題は、上記の行を維持すると、カナダのトロントのタイムゾーンで問題なく機能し、イタリアのタイムゾーンで問題が発生し、この行を削除するとイタリアのローマで問題なく機能し、イタリアのトロントで問題が発生することです。

このために、systemTimeZone と localTimeZone も設定しようとしましたが、まだ運がありません。

では、すべてのタイムゾーンでイベントを正しい日表示に保つにはどうすればよいですか?

さらに詳細が必要な場合はお知らせください。

4

2 に答える 2

2

すべて[NSTimeZonetimeZoneForSecondsFromGMT:0]; [NSTimeZonesystemTimeZone]に置き換える必要があります。

systemTimeZoneでない場合は、タイムゾーンの時間変更を反映するようにUIDatePickerから出力される日付を編集する必要があります。編集しない場合は、すべての日付が1日後に表示されます。

ここに問題があります:https ://github.com/devinross/tapkulibrary/issues/40

于 2012-10-24T02:48:56.937 に答える
2

同様の問題に対する回答は次のとおりです。 https://stackoverflow.com/a/9405625/220154

tapku カレンダーは、日付と比較するために使用する日付として GMT:0 を設定していると思います。カレンダーに含める日付を確認するときに、日付を GMT の午前 0 時まで減らす必要があるでしょう。

それが役に立てば幸い。

于 2012-02-23T01:02:29.017 に答える