2012-01-13 1 views
2

Я пытаюсь написать программу для отображения набора значений из базы данных моего андроида. Использование php-соединения.Адаптер списка массивов - как создать экземпляр объекта?

Мой вопрос

ListAdapter ла = новый ListAdapter (это, R.id.Menu);

или

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

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

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

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

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

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

ответ

0

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

+0

Спасибо, теперь я могу понять это намного лучше. Благодаря!!!! – Beetle

0

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

0

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

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