Какой CursorAdapter мне нужно использовать?

CursorAdapter имеет 3 конструктора. Давайте посмотрим на руководство и ссылку.

1) CursorAdapter (Контекст контекста, Курсор c)

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

2) CursorAdapter (Контекст контекста, Курсор c, логическое значение autoRequery)

Конструктор, позволяющий управлять автоматическим запросом. Рекомендуется использовать не этот , а вместо него CursorAdapter (Context, Cursor, int).

3) CursorAdapter (Контекст контекста, Cursor c, int flags)

Рекомендуемый конструктор.

flags Флаги, определяющие поведение адаптера; может быть любой комбинацией FLAG_AUTO_REQUERY и FLAG_REGISTER_CONTENT_OBSERVER.

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

FLAG_REGISTER_CONTENT_OBSERVER. Этот флаг не требуется при использовании CursorAdapter с CursorLoader.

CursorAdapter (Context context, Cursor c, int flags) - рекомендуемый конструктор, но возможные флаги - 2, один устарел, а другой не нужен при использовании CursorAdapter с CursorLoader. Если я использую CursorAdapter с CursorLoader, мне нужно использовать этот конструктор и передавать ноль в качестве флага? И в этом случае конструктор тот же, что и устаревший №1?

9
задан Alex Lockwood 23 May 2012 в 04:05
поделиться