как показать большой набор данных на UITableView - PullRequest
1 голос
/ 11 мая 2011

У меня есть массив сообщений, в которых размер может быть 100000 и более. Я хочу показать это в алфавитном порядке (в котором пользователь может легко перейти к алфавиту), каков наилучший способ сделать это? Создание TableView с 100000 записей, я думаю, не будет хорошей идеей. Нужны некоторые предложения для этого.

Ответы [ 4 ]

3 голосов
/ 11 мая 2011

Я не уверен, что есть хороший способ представить 100 000 записей на iPhone или iPad.Я предполагаю, что вопрос, который я задам, заключается в том, нужен ли пользователю ДЕЙСТВИТЕЛЬНО доступ к этому объему данных одновременно на этих типах устройств?

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

Ура!

0 голосов
/ 11 мая 2011

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

Честно говоря, даже если вы загрузите эти сто тысяч или более В отсортированном виде в алфавите есть только 26 букв, и он будет отображать около 3800постов за письмо, при условии, что ваши посты распределены равномерно, и ваши пользователи не будут тратить время на их просмотр.

0 голосов
/ 11 мая 2011

Я бы представил эти данные в TableView, но я бы попытался заставить пользователя каким-то образом отфильтровать 100 000 сообщений, чтобы ни на одном этапе вы не загрузили 100 000 сообщений в TableView.

0 голосов
/ 11 мая 2011

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

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