Иметь более одного NstableView с разным контентом - не отображает данные

StackOverflow https://stackoverflow.com/questions/2594219

Вопрос

У меня две таблицы (один изыскатель и один обычный табличк). Я не использую ArrayControllers, просто использую:

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

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

Это отобразить содержимое строки. Но проблема в том, что у меня не только одна табличка - у меня больше, чем один. Поэтому я добавил еще один NSObject с этими кодами внутри. Но содержание не покажет.

Должен ли я использовать ArrayControllers? Или я могу показать содержание второй таблицы по-другому?

Это было полезно?

Решение

Вам не нужно использовать массивные контроллеры. На самом деле, они даже не существовали для большей части жизни какао. Протокол источника данных работает просто отлично (даже лучше в некоторых случаях).

Вы можете иметь отдельные контроллеры (один для каждой таблицы), конечно, но обратите внимание, что вы получаете ссылку на представление таблицы в каждом из методов источника данных и делегатов (ATABLEVIEW в вашем источнике выше), поэтому вы можете дать другой ответ в зависимости от Взгляд таблицы. Таким образом, один контроллер может быть ответственным за обе таблицы в вашем Master / Detail UI. Другими словами:

Взгляд таблицы: "Что такое столбец a of row 3?"

Ваш контроллер: «Кто спрашивает?»

Что касается ваших данных, не отображаемых, вы создали вам второй контроллер и подключите к нему источник данных таблицы проблем? Вы спрашивали таблицу --релаooaddata? Трудно помочь вам с ограниченной информацией, которую вы предоставили.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top