異なる内容で複数のNSTableViewを持っている - データが表示されません
-
25-09-2019 - |
質問
私は2つのTableViews(1 SOURCELISTと1ノーマルテーブルビュー)をしました。私はちょうど使用して、ArrayControllersを使用していないよ。
- (id)tableView:(NSTableView *)aTableView
objectValueForTableColumn:(NSTableColumn *)aTableColumn
row:(NSInteger)rowIndex;
- (NSInteger)numberOfRowsInTableView:(NSTableView *)aTableView;
行の内容を表示するには、この。私はより多くのものよりました - しかし、問題は、私はテーブルビューだけでなく、1を持っているということです。だから私は、内部のこのコードで別のNSObjectのを追加しています。しかし、コンテンツ文句を言わないショーます。
私はArrayControllersを使用する必要がありますか?または私は別の方法で第二テーブルビューの内容を表示することができますか?
解決
あなたは、アレイコントローラを使用する必要はありません。実際に、彼らも、Cocoaの人生のほとんどのために存在していませんでした。データソースプロトコルは、(より良いいくつかのケースで)だけで正常に動作します。
あなたはもちろんの別々のコントローラ(各テーブルに1つ)を持っていますが、あなたは別のを与えることができるようにあなたは、データソースとデリゲートメソッド(上記のソースでaTableView)のそれぞれのテーブルビューへの参照を取得するに注意することができますテーブルビューに応じて応答。この方法では、一方のコントローラは、マスター/ディテールUIの両方のテーブルを担当することができます。つまります:
テーブルビュー: "行3の何の列A?"
あなたのコントローラ: "尋ねるのですか?"
表示されていないデータについては、あなたの第二のコントローラをインスタンス化し、それに問題のあるテーブルのデータ・ソースを接続したのですか?あなたは-reloadDataにテーブルを聞いていましたか?それはあなたが与えてくれた限られた情報のお手伝いをするのは難しいます。