2

私が作成しているツールの設定パネルの一部である NSPredicateEditor があります。

NSUserDefaults オブジェクトの他のアイテムと同じようにユーザーの選択を保存したいのですが、Binding を NSPredicateEditor オブジェクトに追加してツールを実行すると、データが保持されず、さらに他のデフォルトが表示されなくなります. バインディングを取り除いて再コンパイルすると、他のすべてが元に戻ります。

NSPredicatedEditor データをユーザー設定として保存する最良の方法は何ですか?

ありがとう。

4

1 に答える 1

2

の UI がNSPredicateEditor変更されると、それらの変更はすぐにエディターobjectValue(つまり、表示されるNSPredicate) に反映されます。したがって、その述語を取得して、NSKeyedArchiver. これにより、述語が効果的にNSDataオブジェクトに変換され、.csv に保存できますNSUserDefaults

読み戻すには、NSDataオブジェクトを取得し、 を実行してNSKeyedUnarchiversetObjectValue:述語エディターで実行します。

私は試したことはありませんが、おそらくバインドを介してこれを達成 できます。an のを an (またはinフォーム)を提供するものにバインドできます。valueNSPredicateEditorまた、おそらく、値トランスフォーマーがトランスフォーマーであることを指定する必要があります。NSPredicateNSPredicateNSDataNSKeyedUnarchiveFromData

于 2011-03-07T00:55:18.790 に答える