バインディングを使用してテーブル データを取得するテーブルがあります。また、表示されている特定のセルをカスタマイズするために willDisplayCell を使用しています。willDisplayCell
私の質問は、メソッドで参照されているセルの値を取得するにはどうすればよいですか? dataSource ではなくバインディングを使用しているため、コントローラー オブジェクトを照会したくありません。NSTableColumn または NSTableView に、値を取得するために呼び出さなければならないものはありますか?
1 に答える
2
データ ソースとバインドのアプローチを混在させても問題はありません。実際、ドキュメントには、複雑な状況でより優れた制御を行うために 2 つを混在させることができると記載されています。それは常に行われているので、何か間違ったことをしているとは思わないでください。
また、順序のポイント:-tableView:willDisplayCell:forTableColumn:row:
メソッドはプロトコルでNSTableViewDelegate
はなくNSTableViewDataSource
プロトコルの一部であるため、思ったよりも「汚い」ことはありません。:-)
この状況での正しい方法は、配列コントローラーへのアウトレットを作成し (メッセージを送信できるようにするため)、-arrangedObjects
要求された行と一致するインデックスを持つオブジェクトを要求することです。他の方法では、フレームワークと戦っています。
于 2011-11-16T04:22:22.153 に答える