0

2つのTableViewがあります(1つはSourceList、もう1つはNormal TableView)。私はArrayControllersを使用しておらず、次のものを使用しています。

- (id)tableView:(NSTableView *)aTableView
objectValueForTableColumn:(NSTableColumn *)aTableColumn
            row:(NSInteger)rowIndex;

- (NSInteger)numberOfRowsInTableView:(NSTableView *)aTableView;

これにより、行の内容が表示されます。しかし、問題は、TableViewが1つだけではなく、複数あることです。そこで、このコードを含む別のNSObjectを追加しました。ただし、コンテンツは表示されません。

ArrayControllersを使用する必要がありますか?または、別の方法で2番目のTableViewのコンテンツを表示できますか?

4

1 に答える 1

0

アレイコントローラを使用する必要はありません。実際、それらはココアの人生のほとんどの間存在すらしていませんでした。データソースプロトコルは問題なく機能します(場合によってはさらに優れています)。

もちろん、個別のコントローラー(テーブルごとに1つ)を使用することもできますが、データソースメソッドとデリゲートメソッド(上記のソースのaTableView)のそれぞれでテーブルビューへの参照を取得するため、テーブルビュー。このようにして、1つのコントローラーがマスター/詳細UIの両方のテーブルを担当できます。言い換えると:

テーブルビュー:「行3の列Aは何ですか?」

あなたのコントローラー:「誰が尋ねているの?」

データが表示されないことに関して、2番目のコントローラーをインスタンス化し、問題のあるテーブルのデータソースをそれに接続しましたか?テーブルに-reloadDataを要求しましたか?あなたが提供した限られた情報であなたを助けるのは難しいです。

于 2010-04-07T17:07:18.620 に答える