Лучшие практики для обновления ячеек таблицы на основе уведомлений - PullRequest
6 голосов
/ 24 февраля 2011

У меня есть табличное представление пользовательских ячеек, представляющих отдельные загрузки, и в каждой ячейке есть индикатор прогресса и значок успеха / ошибки.Я хочу обновить ячейки по мере обновления прогресса и указать, был ли это успех / неудача.Я делаю это, заставляя мои контроллеры загрузки передавать NSNotifications для прогресса / успеха / неудачи.

Лучше ли:

A) иметь в каждой ячейке прослушиватель NSNotification дляэти уведомления и обновляют представление ячейки

ИЛИ

B) имеют контроллер представления таблицы имеют прослушиватель NSNotification для прослушивания этих уведомлений и затем устанавливаютзначения для каждой ячейки путем получения ячеек с помощью cellForRowAtIndexPath.

Я полагаю, что это сводится к A , проще реализовать, но мне интересно, есть ли снижение производительности при наличии большого количества слушателейслушая эти уведомления и делая «ЕСЛИ это уведомление обо мне ...».В отличие от B , который имеет только одного слушателя и может быть обобщен на любой дизайн multi-single single listener.

1 Ответ

5 голосов
/ 24 февраля 2011

Вы можете настроить Key-Value Observation (KVO) для своего табличного представления для обработки обновлений строк, а затем использовать его (с пользовательским подклассом UITableViewCell) для обновления ячеек информацией из ваших объектов.См. Использование KVO для обновления таблиц , где приведен пример использования KVO для обновления разделов / строк.

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