BaseAdapter

BaseAdapter

BaseAdapter, както подсказва името му, е базовият клас за реализации на конкретни адаптери в Android. Той е абстрактна и следователно не може да бъде пряко използван.

Използване на BaseAdapter

Задача:

Да се създаде приложение извеждащо списък 
от градове и пощенски кодове.

CreateProject

При използването на BaseAdapter с ListView трябва да бъде създаде клас, който реализира следните методи:

int getCount()
Object getItem(int position)
long getItemId(int position)
View getView(int position, View convertView, ViewGroup parent)

Преди да се създаде имплементация на BaseAdapter, трябва да се създаде оформлението за един реда ListView, а също и клас за елементите (данните) в ListView.

Kлас за данни

models

Всеки ред в ListView ще съдържа име на град и пощенски код, така че класът ще изглежда:

Генератор на данни

ListView оформление (layout)

Създава се с десен бутон върху папката layout -> new -> XML -> layout XML file

файла ще се казва: layout_list_view_row_items.xml, защото ще съдържа визуалното описние на един ред от ListView. Root Tag ще е: LinearLayout - този таг оказва, че всички визуални елементи в него ще се подреждат в линия

От палитрата с ресурси изберете две TexView и ги провлачете върху изгледа, който създадохте.

listView-text

Добавяне на ListView

В аctivity_мain.xml трябва да се добави ListView от палитрата.

listView

Създаване на персонализирана BaseAdapter реализация

  1. Създаваме клас който щр бъде адаптера, този клас трябва да съдържа:

Използване на персонализиран адаптер

Адаптерът се използва лесно, като се създаде с необходимите параметри и зададете като адаптер на listview.

Last updated

Was this helpful?