1

Недавно я написал пример документации StackOverflow, иллюстрирующий, как заполнить ListView из базы данных, используя SimpleCursorAdapter.CursorAdapter устарел?

Он был отвергнут со следующей мотивацией:

Никто не должен использовать CursorAdapters больше. Они были устарели по какой-то причине!

Я не знал, что адаптеры курсора устарели (и по какой причине), так что я разобрал его. Все, что появилось, было кучей сообщений, задающих примерно тот же вопрос, который я задаю прямо сейчас, и стандартный ответ, казалось, был «Только один из конструкторов устарел, а не весь класс CursorAdapter!»

Так в каком виде это? Был ли мой вклад законно отвергнут или нет?

Как следует заполнять ListView, если не SimpleCursorAdapter? Я знаю, что есть такие вещи, как CursorLoader, но для простой задачи, например, для отображения некоторых данных в ListView, кажется, что ненужным хлопотам приходится иметь дело с контент-провайдерами и другими вещами, когда то же самое можно сделать с помощью AsyncTask и SimpleCursorAdapter. ..

+0

AFAIK, они не устаревшее, но я хотел бы знать, почему пользователь считает, что они есть. То есть, у них есть официальный источник этой информации? Может быть, я просто из петли. –

+0

Да, я хотел бы знать то же самое, но я не мог найти способ связаться с пользователем, который отклонил мой пример и спросил их ... – BadCash

+0

Вы можете открыть [чат с ним] (http: // chat .stackoverflow.com/users/4409409 /), и посмотреть, отвечает ли он. Тем не менее, это тотализатор. Некоторым пользователям не нравится чат. Он довольно активен на месте, поэтому шансы приличные, что он скоро будет рядом, чтобы увидеть приглашение в комнату. –

ответ

0

только конструктор, который по умолчанию использует FLAG_AUTO_REQUERY осуждается, потому что:

Эта константа осуждался в уровне API 11. Этот параметр не рекомендуется, так как это приводит к Cursor запросов, выполняемых на пользовательский интерфейс приложения и, следовательно, может привести к плохой отзывчивости или даже к Приложение Не отвечает на ошибки. В качестве альтернативы используйте LoaderManager с CursorLoader.

Тем не менее вы можете сделать что-то вроде этого:

CursorAdapter myAdapter = new CursorAdapter(myContext, myCursor, CursorAdapter.FLAG_REGISTER_CONTENT_OBSERVER) { 
    ... 

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

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