1

NSDateFormatter を使用しようとすると、この警告 (以下) が表示されます。.h ファイルをインポートしていますが、問題は何ですか? (ああ、同じ方法でエラーが発生します(認識されないセレクターが送信されました...))

警告は次のとおりです。

warning: no '-initWithDateFormat:allowNaturalLanguage:' method found

コードは次のとおりです。

NSDateFormatter *myFormatter = [[NSDateFormatter alloc] initWithDateFormat:@"EEE, dd, MMM yyyy HH:mm:ss ZZZ" allowNaturalLanguage:NO];

NSDate *date = [myFormatter dateFromString:@"Mon, 01 Feb 2010 20:25:37 +0000"];
NSLog(@"Time interval %d",[date timeIntervalSinceNow]);
4

3 に答える 3

5

Georg が言うように、initWithDateFormat:allowNaturalLanguage は Mac OS X でのみ許可され、iPhone では許可されません。

次のように、iPhone で NSDateFormatter を使用できます。

NSDateFormatter* formatter = [[[NSDateFormatter alloc] init] autorelease];
formatter.dateFormat = @"yyyy-d-M";

参考文献:

于 2010-02-08T06:44:38.880 に答える
2

iPhone SDKにはこのinit メソッドがありません。Mac OS X SDK にのみあります。プレーンな[[.. alloc] init]を使用して、自分でプロパティを設定する必要があります。

于 2010-02-08T06:43:13.517 に答える
0

申し訳ありませんが、そうすべきだと思います...

NSDateFormatter* formatter = [[[NSDateFormatter alloc] init] autorelease];    
[formatter setDateFormat:@"yyyy-d-M"];
于 2010-02-09T09:53:45.040 に答える