Вот самый простой вариант, который позволяет вам сохранить единый виртуальный канал для вашего делегата/источника данных:
Установить как tableviews делегат и источник данных к вашему UIViewController
.
Ctrl-перетаскивание из одной из статических ячеек в ваш .h-файл и создание коллекции IBOutlet (здесь staticCellsCollection
). Добавьте каждую статическую ячейку к этой коллекции, соблюдая порядок, это будет важно.
Реализовать cellForRowAtIndexPath:
таким образом:
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
if (tableView == _dynamicTableView) {
// Do your dynamic thing
}
else if (tableView == _staticTableView) {
// Return the static cells one by one
// Here the static TV has only one section, and all cells are in staticCellsCollection
return staticCellsCollection[indexPath.row];
}
}
Кроме того, необходимо адаптировать numberOfRowsInSection
и numberOfSectionInTableView
, но это довольно простой (проверьте, какая таблица просит, и возвращать соответствующие значения, например staticCellsCollection.count
для числа строк статическое ТВ).
Возможно, вам потребуется адаптировать это, например, если вам нужно несколько разделов в вашем статическом TableView, вы должны создать IBOutletCollection для каждого раздела и обработать количество строк/секций соответственно и вернуть правильные ячейки. Во всяком случае, это довольно просто реализовать, как только вы получите эту идею.
Да, я делаю это .... Дело в том, что у меня есть 3 вида таблиц, и это то, что я делаю, проблема со статической, потому что статические методы таблицы не нужно кодировать, поэтому вы просто удалите коды источника данных, и он работает.то, что я хочу, является одним из следующих: какой должен быть код внутри (если static_table), как я говорю ему использовать ячейки, определенные на раскадровке? или как мне назначить ему другой источник данных? –
Я не использую раскадровку, поэтому я действительно не знаю, как помочь вам в решении этой проблемы. Самое простое решение - создать класс tableviewdelegate для этого только и настроить специальные методы делегата там, где не используются другие две динамические таблицы. – Putz1103
спасибо, я очень помог мне :) плохо попробую позже –