Как отображать данные из RSS-канала частями в приложении Iphone

Я показываю RSS-каналы в своем табличном представлении. так как есть сотни каналов, поэтому моему приложению требуется много времени для их загрузки и отображения, я хочу загрузить только первые 25 каналов и отобразить их в виде таблицы, а когда пользователь нажмет «Дополнительно 25», приложение загрузит следующие 25 и отобразит их. Любая идея......... :) Я использую TouchXML для анализа XML-канала.


person Nauman.Khattak    schedule 22.09.2010    source источник


Ответы (3)


Это зависит от веб-сервиса, который предоставляет вам RSS-канал. Если вы можете запросить у них загрузку только 25 фидов, то серверная часть в порядке.

Теперь клиентская сторона, вам нужен UITableView, как обычно. В методе делегата numberOfRows вы возвращаете 25 (также необходимо +1 для последней ячейки) и показываете первые 25 каналов. В нижней части таблицы последняя ячейка может быть ячейкой с текстом «Загрузить еще», тогда здесь вы начали загружать больше

Вы также можете поместить загрузку и анализ RSS-канала в поток, это повысит вашу производительность.

person vodkhang    schedule 22.09.2010

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

как сказал водкханг, используйте поток, если хотите повысить производительность.

person Chandan Shetty SP    schedule 23.09.2010

Взгляните на пример SeixmicXML и образец кода LazyTableImages на веб-сайте разработчиков Apple. Они используют многопоточность (NSOperation) для анализа пакетов данных и загрузки их в табличное представление.

person live-love    schedule 08.10.2010