iPhone: Как добавить «следующие 25», как в нижней части экрана в приложении магазина приложений? - PullRequest
1 голос
/ 27 сентября 2010

У меня есть UITableView, и я хочу иметь функцию «следующие 25», как в приложении магазина приложений.

Однако я понятия не имею, какой контроль они используют и как его развивать.

Может ли кто-то пролить свет на это и дать мне как можно больше информации?

Ответы [ 2 ]

4 голосов
/ 27 сентября 2010

То, что они делают, это создают другую ячейку с кнопкой в ​​ней.При нажатии этой кнопки запускается какой-то метод, который выходит и извлекает больше данных, а затем добавляет их в источник данных табличного представления и перезагружает таблицу.

Эта ячейка «загрузить больше» никогда не полагается на данныеsource (он добавляется без запроса DS, помните об этом), вместо этого добавляется специальный код обработки в tableView:cellForRowAtIndexPath:, чтобы проверить, находимся ли мы в нижней части таблицы, а затем вернуть пользовательскую ячейку.Поэтому, когда мы перезагружаем табличное представление после добавления новых элементов в источник данных, табличное представление становится больше, и кнопка удаляется из этой позиции и добавляется к основанию, когда мы добираемся до нового основания.:)

0 голосов
/ 27 сентября 2010

Первая половина ответа выше верна.Вторая половина (с использованием reloadData) - не лучший способ сделать это.

Как только у вас появятся новые данные, вы должны вызвать insertRowsAtIndexPaths:withRowAnimation: в вашем табличном представлении.Это говорит табличному представлению о том, что вы добавили несколько новых строк, и позволяет анимировать добавление новых строк.Например, вы можете передать UITableViewRowAnimationFade или UITableViewRowAnimationTop.Это также более эффективно, потому что табличное представление не должно перезагружать и перерисовывать строки, которые уже находятся в таблице.

Кроме того, посмотрите на некоторые видео на табличных представлениях из WWDC 2010 (Вы можете найти их в http://developer.apple.com/iphone, а затем прокрутить вниз).У них много хороших вещей.

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