2012-02-04 12 views
0

dateプロパティを持つオブジェクトの配列をソートする述語を作成しようとしています。しかし、私が述語をNSLogしようとすると、例外が発生し、私は奇妙なエラーが発生します。ここでロギング時にNSPredicateの動作が非常に奇妙になる

はコードです:

NSDateFormatter * dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"yyyy"]; 
NSDate * minDate = [dateFormatter dateFromString:@"2011"]; 
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"date >= %@ ", minDate]; 
NSLog(predicate); 

はここでエラーです:

だから、
2012-02-04 12:45:58.400 MyApp[42746:17303] -[NSComparisonPredicate length]: unrecognized selector sent to instance 0x9359000 

、なぜこの出来事とどのように私はそれを修正することができますがありますか?

+0

あなたに述語を適用しようとしているプロパティの正確な種類は何ですか? – Costique

+0

NSDate。しかし、私は実際に述語を使っている場所にさえいません。 –

+0

NSDatesとそのような述語を比較するのによく分かりません。そして、はい、そのようなNSLog()を使用することはできません。 – Costique

答えて

2

試し:NSLog(@"%@", predicate)

のNSLogは、フォーマット文字列として働くNSStringのを、期待しています。書式指定文字列中の書式指定子の数は、続く必要がある引数の数を指定します。 docから

NSLog
Logs an error message to the Apple System Log facility.

void NSLog (
    NSString *format, 
    ... 
); 

Discussion
Simply calls NSLogv, passing it a variable number of arguments.

関連する問題