Наиболее эффективный способ обработки ячеек UITableView различного размера и эффективного извлечения связанных данных - PullRequest
0 голосов
/ 06 июня 2011

Привет всем, буду очень признателен за некоторую помощь в этом - я стремлюсь к высокой эффективности извлечения данных и использования памяти.

У меня есть основное хранилище данных, в котором хранится таблица элементов контента (tocEntity): заголовок статьи, номер страницы. На странице может быть несколько статей, и номера страниц могут существовать или не существовать, т. Е. Если у вас есть 5-страничная статья, начиная со страницы 3, у вас не будет никакого t.o.c. записи для страниц 4-7.

Когда я отображаю вышеупомянутое в табличном представлении, каждая ячейка отображает все названия статей для страницы, поэтому у некоторых ячеек будет одно имя статьи, в то время как у других может быть 10 (или больше)

Нет проблем, чтобы правильно расположить ячейки, но я заинтересован в том, чтобы эффективно извлекать данные только для того, что в данный момент необходимо для табличного представления (способ, которым работает NSFetchedResultsController) - проблема в том, что в каждой ячейке нет 1 основной записи данных , но довольно разные суммы. Так что если NSFetvhedResultsController скажет (принесите мне данные для ячеек 12-17) - это не приведет к извлечению данных из одного ядра.

Есть идеи, как это реализовать?

Ответы [ 2 ]

0 голосов
/ 06 июня 2011

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

0 голосов
/ 06 июня 2011

В viewDidLoad получить все данные в NSArray, а затем использовать этот массив в методах UITableView DataSource вместо живых вызовов. Если вы хотите обновить данные, заново заполните массив из данных и вызовите reloadData в табличном представлении.

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