iPhone Three20 TTTableMoreButton Загрузка дополнительных строк - PullRequest
1 голос
/ 12 июля 2010

У меня есть приложение под названием AppAdvice, которое использует Three20. Я заметил, что у них есть механизм в большинстве табличных представлений, который автоматически загружает больше результатов, когда вы прокручиваете список вниз и открываете последнюю строку.

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

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

Я знаю, что у Three20 есть кнопка tttablemore, но я не могу понять, как ее использовать.

http://ws.2wsx.ws/load_more_items.jpg

спасибо, Howie

Ответы [ 4 ]

2 голосов
/ 26 января 2011

Все, что делает TTTableMoreButton, вызывает следующую модель в вашей модели (код в TTTableViewDelegate)

- (void)load:(TTURLRequestCachePolicy)cachePolicy more:(BOOL)more 

если больше YES, тогда устанавливается флаг _isLoadingMore. Проверьте это в:

- (void)requestDidFinishLoad:(TTURLRequest*)request 

и затем добавьте дополнительные результаты в массив _items вместо того, чтобы вставлять их сверху.

Конечно, чтобы все это работало, вам нужно реализовать TTModel (переопределить метод модели в вашем источнике данных). Для приложений, ориентированных на данные, лучше всего искать TTURLRequestModel, и я уверен, что есть примеры этого в TTTwitter

1 голос
/ 26 января 2011

Я написал, как именно это сделать здесь

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

0 голосов
/ 14 марта 2012

Я видел вопрос, и это вдохновило меня написать сообщение для него.http://blog.grio.com/2012/03/thumbnail-view-of-large-number-of-photos-with-three20.html Надеюсь, это поможет.

0 голосов
/ 17 ноября 2011

TTTwitter кажется неправильным, когда я нажимаю на кнопку more, следующий метод запускается дважды, и первый раз больше true, второй больше false, поэтому мы видим, что таблица не может правильно загрузить данные.

- (void)load:(TTURLRequestCachePolicy)cachePolicy more:(BOOL)more 
...