2012-02-04 7 views
0

У меня есть ListFragment, в настоящее время заполненный статическими данными, фиксированный во время компиляции. Я действительно хочу, чтобы данные для списка были экранизированы из Интернета.Population ListFragment с удаленными данными

Я планирую использовать jsoup, чтобы выполнить поиск и разбор и т. Д. Но какой лучший способ связать jsoup с ListFragment?

Должен ли я использовать загрузчик, такой как AsyncTaskLoader? Я не был уверен, потому что API-документы говорят, что загрузчики должны «контролировать источник своих данных и доставлять новые результаты при изменении содержимого», но получение данных для моего ListFragment будет одноразовой операцией: не будет необходимости для мониторинга источника.

Любые советы были бы с благодарностью получены.

+0

почему вы не используете ArrayAdapter? – kingston

+0

Я использую ArrayAdapter для статических данных, и я планирую использовать данные, очищенные из Интернета. Вопрос в том, как лучше всего реализовать поиск из Интернета. –

+0

Я не могу выполнить поиск в 'onActivityCreated()' моего фрагмента, потому что это работает в потоке пользовательского интерфейса. –

ответ

0

У меня была та же проблема, для ее решения мне пришлось расширять AsyncTaskLoader и работать нормально. На public List loadInBackground() Я загружаю данные, и все.

Я рекомендую о том, что проверяющие поддержка v4 samplesandroid/поддержка/v4/образцы/Support4Demos/SRC/COM/пример/Android/supportv4/приложение/LoaderCustomSupport.java

0

Да, вы должны использовать AsyncTaskLoader. Используйте метод doInBackground(), чтобы выполнить разбор, и onPostExecute() метод для извлечения данных из jsoup.

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

Use Interface to callback from Task to Fragment

 Смежные вопросы

  • Нет связанных вопросов^_^