2

Мне нужен SimpleCursorAdapter в моем проекте. Я написал код для этого в версии 2.3. Но я не мог добавить это в ICS. Он показывает, что SimpleCursorAdapter(context, layout, c, from, to) устарел, а новый - SimpleCursorAdapter(context, layout, c, from, to, flags).SimpleCursorAdapter в ICS

В этот параметр включен новый параметр «flags». Что нужно добавить на место флагов? Что это значит?

+0

Вы также используете CursorLoader? – CjS

ответ

4

Цитирую Android ссылки, параметр флага следующее:

public static final int **FLAG_AUTO_REQUERY** 

С: Уровень API 11

Эта константа является устаревшим. Эта опция не рекомендуется, так как это приводит к тому, что запросы курсора выполняются в потоке пользовательского интерфейса приложения и, следовательно, могут приводить к плохой отзывчивости или даже не отвечать на запросы . В качестве альтернативы используйте LoaderManager с помощью CursorLoader.

Если установлено, адаптер будет переадресовывать запрос() на курсор всякий раз, когда доставляется уведомление об изменении контента . Подразумевается

FLAG_REGISTER_CONTENT_OBSERVER. Constant Value: 1 (0x00000001) 

.

public static final int **FLAG_REGISTER_CONTENT_OBSERVER** 

С: API уровня 11

Если установлен адаптер будет регистрировать наблюдателя контента на курсоре и будет вызывать onContentChanged(), когда уведомление приходит Будьте осторожны при использовании этого флага.: вам необходимо отключить текущий курсор от адаптера, чтобы избежать утечек из-за его зарегистрированных наблюдателей. Этот флаг не требуется при использовании CursorAdapter с CursorLoader. Константа Значение: 2 (0x00000002)

Однако новый шаблон для Honeycomb + заключается в использовании курсораLoader для управления курсором для вас. В этом случае вы передаете 0 в качестве параметра flags.

Read more (with tutorials) on CursorLoader + CursorAdapter

+0

Ошибка исчезла .. но она по-прежнему не работает :(все данные из базы данных выбраны сразу. – Deepzz

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

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