1

iPhoneアプリを作成していて、CoreデータにNSDateがあり、それを表示しようとしていますが、次のエラーが発生し続けます。

キャッチされなかった例外'NSInvalidArgumentException'が原因でアプリを終了しています。理由:'-[__ NSDate isEqualToString:]:認識されないセレクターがインスタンス0x81b7840に送信されました。

以下のコードは、辞書であるアイテムからデータを取得しています。どうすればこれを機能させることができますか?

self.lblTheDate.text = [self.item valueForKey:@"MyDate"];
4

2 に答える 2

3

次のようなものを使用して、(辞書内の)NSDateをNSStringに変換しますが、必要な正しい日付と時刻のスタイルを選択します。

self.lblTheDate.text = [NSDateFormatter localizedStringFromDate:[self.item valueForKey:@"MyDate"] dateStyle:NSDateFormatterMediumStyle timeStyle:NSDateFormatterNoStyle]

日付と時刻のスタイルにはさまざまなオプションがあります。

NSDateFormatterNoStyle     : Specifies no style,
NSDateFormatterShortStyle  : Specifies a short style, typically numeric only, such as “11/23/37” or “3:30pm”,
NSDateFormatterMediumStyle : Specifies a medium style, typically with abbreviated text, such as “Nov 23, 1937”,
NSDateFormatterLongStyle   : Specifies a long style, typically with full text, such as “November 23, 1937” or “3:30:32pm”,
NSDateFormatterFullStyle   : Specifies a full style with complete details, such as “Tuesday, April 12, 1952 AD” or “3:30:42pm PST”

これらの日付と時刻のスタイルの形式は、ロケール、ユーザー設定、およびオペレーティングシステムのバージョンによって異なるため、正確ではないことに注意してください。

クラスリファレンス: NSDateFormatter

于 2012-12-01T04:39:09.847 に答える
0

NSDate オブジェクトを取得し、それを NSString を引数として必要とするテキスト フィールドに割り当てたいようです。
たとえば、NSDateFormatを使用して、最初に日付をNSstringに変換する必要があります

于 2012-12-01T04:07:11.720 に答える