Как определить, когда отображение или обновление tableView завершено (iOS) - PullRequest
0 голосов
/ 02 января 2011

Я хотел бы отобразить диапазон (от x до y) строк данных, отображаемых в tableView. Проблема в том, что когда я обновляю данные с помощью [self.tableView reloadData], я не могу немедленно запросить отображаемые в данный момент данные (они еще не будут установлены).

Поэтому мне нужно иметь событие, когда отображение tableView завершается в любое время, когда оно изменяется. Но я не нашел этого (пока).

Спасибо всем, кто может подсказать мне, как удовлетворить эту потребность.

1 Ответ

3 голосов
/ 02 января 2011

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

Если вы следуете правильной парадигме модель-представление-контроллер (MVC), не должно быть никаких причин для обратного вызова, как вы просите о существовании.Вот почему это не так.

Не пытайтесь заново изобрести колесо, просто используйте MVC.

Если вы хотите получать уведомления, когда что-то меняется в вашей модели, попробуйте использовать Key-Value Observing (KVO).Документацию по KVO и MVC можно найти на developer.apple.com.

Удачи!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...