Как сделать бесконечный UITableView? - PullRequest
1 голос
/ 26 сентября 2010

У меня есть несколько параметров в UITableView, и я хочу, чтобы пользователь мог прокручивать их вечно. Когда конец достигнут, я хочу добавить начало, чтобы пользователь мог продолжать прокручивать.

Как бы я это сделал?

Ответы [ 2 ]

3 голосов
/ 26 сентября 2010

В tableView:numberOfRowsInSection: возвращает какое-то огромное число и действует соответственно в tableView:cellForRowAtIndexPath:, возвращая одни и те же ячейки снова и снова.

Вы также можете иметь ограниченное количество строк, а в конце показать другую ячейку- содержащий кнопку для пользователя, которую он может использовать для добавления новых строк.Когда эта кнопка нажата, вы просто вызываете [tableView reloadData] и предоставляете больше строк в источнике данных таблицы.

Не случайно ли вы неправильно используете представление таблицы для чего-то, что не подходит так хорошо?Возможно, вам было бы лучше использовать только UIScrollView и перемещать подпредставления при прокрутке пользователя.

2 голосов
/ 26 сентября 2010

Думаю, единственная проблема в том, как обмануть метод numberOfRows:. Одним из возможных решений является возвращение большого числа, например, 10 000. Затем вы устанавливаете правильный cellForRowAtIndexPath: для возврата на основе номера ваших данных по модулю. Например, если у вас есть 100 сущностей данных, вы должны получить indexPath.row% 100

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