Адаптер списка массивов - Как создать экземпляр объекта? - PullRequest
2 голосов
/ 13 января 2012

Я пытаюсь написать программу для отображения набора значений из базы данных на моем Android. Используя php соединение.

Мой вопрос

ListAdapter la = новый ListAdapter (this, R.id.Menu);

или

listView.setAdapter (новый ListAdapter (this, R.id.Menu, элементы меню));

оба кода дают мне одну и ту же ошибку. Невозможно создать экземпляр типа ListAdapter.

Мой соответствующий импорт:

  • android.widget.AdapterView
  • android.widget.ListAdapter
  • android.widget.ListView импорт
  • android.widget.AdapterView.OnItemClickListener import
  • android.widget.ArrayAdapter

почему это происходит? Почему я не могу создать экземпляр необходимого объекта? Что я делаю неправильно ? пожалуйста помогите

Заранее спасибо!

Ответы [ 4 ]

0 голосов
/ 13 января 2012

ListAdapter - это интерфейс.В Java вам нужно создать конкретный класс.Конкретный класс служит мостом между ListView и данными для отображения;он отвечает (помимо прочего) за упаковку данных в виде представления строк для использования ListView.Выберите конкретный класс, который соответствует организации ваших данных.(Это может быть ArrayAdapter<YourDataType>, CursorAdapter, другой из классов, перечисленных в документации, или даже что-то вашего собственного дизайна.)

0 голосов
/ 13 января 2012

вам нужно использовать конкретный класс для использования адаптера, ListAdapter - это интерфейс, поэтому вам нужно либо использовать SimpleArrayAdapter, SimpleCursorAdapter как класс, либо внедрить ListInterface в класс и использовать этот класс для создания экземпляра ListAdapter.

0 голосов
/ 13 января 2012

Если вы пытаетесь создать адаптер из android.widget.ListAdapter, ошибка объясняется самостоятельно. вместо этого создайте ArrayAdapter/BaseAdapter.

иначе, если ListAdapter - ваш собственный класс, удалите import android.widget.ListAdapter и добавьте свой импорт как import com.yourpackage.ListAdapter

0 голосов
/ 13 января 2012

ListAdapter - это попытка интерфейса с использованием одного из его классов реализации, например SimpleCursorAdapter

http://developer.android.com/reference/android/support/v4/widget/SimpleCursorAdapter.html

...