2016-04-14 2 views
0

Просто хочу знать рабочий принцип делегата iOS и источника данных. Например, когда я вызываю [tableView numberOfRowsInSection] в некоторый ViewController.Принцип работы делегата и источника данных

Кажется, что она возвращается меня [tableView.dataSource numberOfRowsInSection]

Но как я могу вызвать [Tableview numberOfRowsInSection] без возврата [tableView.dataSource numberOfRowsInSection]?

Могу ли я узнать, что происходит за кодом? Заранее спасибо.

+0

Вид таблицы кэширует количество строк, пока вы не используете методы insert/delete/reload для уведомления об изменении. – jtbandes

ответ

0

В iOS делегат и источник данных реализованы как шаблон делегирования. Различие между ними заключается в том, что он ответственен и связан с делегирующим объектом. делегат - это управление пользовательским интерфейсом, а источником данных - управление данными. Все они должны принять протокол, в котором определяется набор методов, которые действуют соответствующим образом друг с другом.

Таблица Представленный делегат и источник данных, предназначенные для принятия одной из лучших практик использования шаблона делегирования. Однако шаблон проектирования делегирования иногда реагирует как функция обратного вызова, в случае источника данных и делегата с представлением таблицы он позволяет вам контролировать и настраивать свойства и поведение табличного представления.

Пример того, что вы можете видеть, заключается в том, что реализация делегирования и источника данных позволяет настраивать свойства табличного вида, такие как число или разделы, количество строк, тип ячеек и поведение, подобное щелчкам строки.

Смежные вопросы