0

NSArrayController にすべてを設定して、ファイルの所有者である presentedObject を、持っているテーブルビューのデータ ソースにします。

インターフェイス ビルダーのバインディング内で、フィルター述語を使用して、名前に $ が含まれる arraycontroller 内のアイテムを除外したいと思います。具体的には $ で終わるアイテムを除外したいと思います。収集している FTP 共有の配列。

フィルター述語を次のように設定しました: コントローラー キー: 選択 modelKeyPath : directorAndFiles

値 トランスフォーマー: うーん、わからない? 手伝ってくれますか

欲しかった: $ 文字を含むアイテムを削除します

ありがとう!

4

2 に答える 2

0

フィルタ述語を「設定」するときは、それをバインドします。コントローラキーとして設定したオブジェクトの有効なプロパティにキーパスを設定する必要があります。したがって、代わりに、コントローラーキーをコントローラーオブジェクトに設定し、キーパスをプロパティ(おそらく。などの名前)に設定する必要がありますwindowsPredicate

次に、バインドしたオブジェクトに、を返すwindowsPredicateプロパティを追加しますNSPredicateNSPredicate次のようなものを使用して、自分で作成します。

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name not like '*$'"];

(*は「何でも」を意味するため、大まかに「$で終わらない」と解釈されます。)詳細については、NSPredicateドキュメントを確認してください。幸運を!

于 2010-12-15T21:33:51.410 に答える
0

まず、この場合、値変換は必要ありません。値トランスフォーマーは、値の表示を変更します。たとえば、数字の 2 が "€ 2,00" などと表示される場合があります。

次に、探している述語構文は次のように「ENDSWITH」です。

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name not ENDSWITH '$'"];
于 2016-11-24T13:34:14.143 に答える