2つのタイムゾーンを比較する最も良い方法は何ですか?システムタイムゾーンと選択したタイムゾーン
- (BOOL)isEqualToTimeZone:(NSTimeZone *)aTimeZone
方法を使用して2つのNSTimeZone
のインスタンスを比較しながら、私はこの問題に直面しています。
NSString *timeZoneName = ...
NSTimeZone *sytemTimeZone = [NSTimeZone systemTimeZone];
NSTimeZone *selectedTimeZone = [NSTimeZone timeZoneWithName:timeZoneName];
if ([sytemTimeZone isEqualToTimeZone:selectedTimeZone])
isEqual = YES;
else
isEqual = NO;
ステップ1:設定に移動(アプリケーション)>一般>日付&時間>タイムゾーンと "オースティン" を検索してください。あなたが得るエントリーは "Austin、U.S.A"でしょう。このタイムゾーンを選択します。これはあなたの新しいシステムタイムゾーンであるべきである(SHOULD)!
ステップ2:小さなiPhone/iPadアプリケーションを作成します。 [NSTimeZone knownTimeZoneNames]
を使用して、タイムゾーン名のリストを取得します。次に、 "Austin"を探してみてください。そこにはない!だから、私は "America/Chicago"をタイムゾーンとして使うことができると思いますか?
なぜ設定のタイムゾーンリストが私たちと異なるのですか?
ステップ3:ステップ3「アメリカ/シカゴ」のシステムタイムゾーンとタイムゾーンを比較します。彼らは一致しません。
システムタイムゾーンの 'name'を記録すると、何が表示されますか? –
「アメリカ/セントラル(CDT)オフセット-18000(夏時間)」 – Mustafa
「アメリカ/シカゴ」がアプリケーションと共に設定されている場合、「アメリカ/シカゴ(CDT)オフセット-18000(夏時間)」が表示されます。 – Mustafa