1

これが初心者の質問である場合は申し訳ありませんが、調査を行ったところ、これに対する答えが見つかりませんでした。

カスタム オブジェクトの配列を、プロパティではなく関数でフィルター処理したいと思います。

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"%@ LIKE %@", [times objectAtIndex:x] ,[unit realTime]];
NSArray *filtered  = [objectArray filteredArrayUsingPredicate:predicate];

オブジェクトobjectArrayのみが含まれます。そして、メソッドの結果unitで配列の各オブジェクトで配列をフィルタリングしたいと思います。[unit realTime]基本的には、配列 where をフィルター処理したいと思い[times objectAtIndex:x] == [unit realTime]ます。これは可能ですか?

4

1 に答える 1

1

Unit.h ファイルにrealTimeとして追加してから、既に行った方法と同じようにメソッドを実装できます。その方法はクラスのパラメーターであり、カスタム実装で getter メソッドをオーバーライドしています。この場合、エラーは表示されません。@property() NSDate *realTime;realTimerealTimeundeclared identifier

それが終わったら、述語ステートメントを次のように変更します。

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"%K LIKE %@", unit.realTime, [times objectAtIndex:x]];
NSArray *filtered  = [objectArray filteredArrayUsingPredicate:predicate];

ではなく%Kforを使用する必要があります。unit.realTime%@

于 2013-01-18T09:15:10.490 に答える