UITableViewController: несколько экземпляров или несколько источников данных? - PullRequest
0 голосов
/ 23 августа 2011

У меня есть UITableViewController, у меня есть 4 типа табличных данных для представления в одном формате. Лучше ли использовать один UITableViewController и перезагружать данные каждый раз, когда мне нужно представить данные, или мне следует создать четыре экземпляра UITableViewController со своим собственным источником данных?

Очки, которые я рассмотрел (что я не уверен, если правда):

  1. Я мог бы сэкономить ресурсы, повторно используя один экземпляр UITableViewController.

  2. Тем не менее, всегда вызов UITableView reloadData перед представлением сетки может повлиять на производительность.

Каков наилучший подход с точки зрения производительности / потребления памяти / передовой практики? Или нет разницы? Надеюсь, я ясно.

Обновление: Если быть точным, у меня есть поповер контроллеры с таблицей. Я использую его как «Экран выбора» для различных полей на моих экранах.

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

1 Ответ

0 голосов
/ 23 августа 2011

Краткий ответ:

Это действительно не имеет значения, если ваши массивы данных не массивны (тысячи строк).Все, что проще для вас, хорошо!

Длинный ответ:

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

Однако я бы использовал отложенное создание экземпляров, то есть создавал их только при первом запросе.

Я также выпустил бы их, если бы получил предупреждение о нехватке памяти, и они не были видны.

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