2011-11-14 1 views
28

私はユーザーから5つの検索/フィルタ条件を尋ねる基本的なiPadアプリを持っています。このデータに基づいて、私は自分のコアデータdbに行き、その基準に合った管理対象オブジェクトを引き出す必要があります。同じリクエストに複数の述語を適用する必要があるようですが、それは可能でしょうか?あるいは、私は本当に長い空想的な述語を書くことができますか?複数の要件がありますか?私はそれにどのようにアプローチすべきですか?複数の述語をNSFetchRequestに適用できますか?手動で結果を解析する方が良いでしょうか?

フェッチ要求ですべてのエンティティを取得し、各アレイをループして検索条件に一致するオブジェクトを取得することをお勧めしますか?

お知らせください!

答えて

80

はい、可能です。あなたは、複合述語を探していると、ここでの例と、述語ですしている:

NSPredicate *compoundPredicate 
    = [NSCompoundPredicate andPredicateWithSubpredicates:[NSArray of Predicates]]; 

あなたはまた、あなたのニーズに応じて、notPredicateWithSubpredicatesorPredicateWithSubpredicatesを使用することができます。ドキュメントへ

リンクhttps://developer.apple.com/documentation/foundation/nscompoundpredicate

+2

ありがとうの男が、私はNSStringのを構成し、それは形式として述語に渡すことでこれをやってみました。これはうまくいきましたが、日付はありません!私は仕事の一日を無駄にした。これはフィルタを作成する方法です:D – MQoder

関連する問題