iOS 6 NSDateオブジェクトで曜日のフルネームを取得する際に問題が発生します(iOS 7では正常に動作します)。私は同様の問題についてstackoverflowを検索しましたが、探していたものが見つかりませんでした。
私のテストケースは次のとおりです。
formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"EEEE"];
[formatter setDoesRelativeDateFormatting:NO];
NSDate *testDate = [NSDate dateWithTimeIntervalSince1970:1384551041.389218];
NSLog(@"%@",[formatter stringFromDate:testDate]);
期待される出力はFriday
(デバイスの地域形式とグレゴリオ暦にローカライズされています)、iOS 7で機能しますが、iOS6では空の説明が返されます。同じリージョンフォーマットが設定された実際のデバイスでテストしました。
私の知る限りでは、iOSの6の用途はtr35-25に従って書式設定このドキュメント、およびEEEE
そのフォーマットの週の指定フルネーム日。
私は何かが足りないのですか?
これは実際にはNSDateFormatter
iOS6のバグのように見えます。ただし、明示的に設定した場合にのみバグが発生するようです。
[formatter setDoesRelativeDateFormatting:NO];
その行を省略した場合(そしてNO
とにかくデフォルトです)、結果はOKです(少なくとも私がテストしたとき)。
備考:これは、setDoesRelativeDateFormatting
に関連して使用することのみを目的としていると思いますがsetDateStyle:
、それは純粋な推測です。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加