Android адаптери

Андроидът често се използва адаптери. Говорейки в общи линии, адаптери улесняват свързване с данните за контрол. Адаптери се използват за работа с приспособления, които допълват android.widget.AdapterView. ListView. ExpandableListView. GridView. Spinner. Галерия. както и активност ListActivity и др. Самостоятелно AdapterView допълва android.widget.ViewGroup.

Така че, ние имаме набор от обекти е View компонент. Назначаване адаптер е да се осигури възгледите на контейнера за дете. Адаптерът е на данни и метаданни на конкретен съд и се изгражда всяка гледна дете. Например, ние се генерира списък с елементи (масив от низове) и го предаде списък ListView.

Разбирате ли нещо? Моята котка също не разбира нищо. Нека се опитаме да обясним по различен начин. Какво е общото адаптер? Този адаптер между някои предмети. Да приемем, между питейната вода и една котка изисква адаптер под формата на тапа.

Android адаптери

В този случай, адаптерът е предназначен лошо, то е необходимо да се укриват.

Но да се върнем към Android. В приложения, често се използва в списъка въз основа на ListView. Самият списък е съставен от много елементи на TextView. които идват една след друга. Но броят им ще зависи от това, което искаме да се покаже. Ако имаме нужда от един ден от седмицата, е достатъчно да се седем елемента, ако месеца, след дванадесет, но ако имаме нужда от котки имена в Кот д'Ивоар, законопроектът отива в стотици. С една дума, ние трябва да направи данните, например, под формата на масив и я храня към списъка. Този адаптер прави. Той взема от порядъка на данните, предоставени и ги поставят в списъка в ред. Адаптерът в движение създава TextView и местата, необходими компоненти, получени текст в него. Данните могат да бъдат разположени не само в масива, но също така и в базата данни. За такъв случай се използва друг адаптер. А също така можете да излезе с адаптер. Има готови адаптери за най-честите случаи и тяхното предназначение може да бъде определена от техните имена. Например, ArrayAdapter използва масив, и работи с курсора на CursorAdapter обект. използва се в базите данни.

готови адаптери

Всички адаптерите, съдържащи се в Android, комплементарна база BaseAdapter адаптер. Ето списък на готови адаптери:

  • ArrayAdapter - Той е проектиран да работи с ListView. Данните са представени като масив, са подредени в отделни елементи TextView
  • ListAdapter - адаптер между ListView и данни. Строго погледнато, това е клас-базиран интерфейс, който може да се използва в ArrayAdapter и SimpleAdapter т.н.
  • SpinnerAdapter - адаптер за пакети данни с Spinner елемент. Това е и интерфейса, както ListAdapter и работи на подобен принцип
  • SimpleAdapter - адаптер, който позволява на данни за попълване на списъка на по-сложни структури, например, два текста на един ред в списъка.
  • SimpleCursorAdapter - ResourceCursorAdapter допълни компоненти и създава TextView / ImageView на колоните, които се съдържат в курсора. Компонентите са определени в ресурса
  • CursorAdapter - проектиран да работи с ListView. Той предоставя информация за списъка чрез курсора, който трябва да е колона с име "_id"
  • ResourceCursorAdapter - този адаптер допълва CursorAdapter и може да създаде видове ресурси
  • HeaderViewListAdapter - разширена версия ListAdapter, когато ListView има заглавки.
  • WrapperListAdapter - още списъци адаптер.

BaseAdapter

Стандартни адаптери невинаги покриват нуждите на програмиста. Ако имате нужда от вашия собствен адаптер за Android е абстрактен клас BaseAdapter. която може да се разшири. Net адаптер се изисква в тези случаи, които изискват специални или допълнителни контролни дисплей за контрол на данни дъщерни представяния. В допълнение, можете да предоставите на вашите адаптер кеш елементи за подобряване на производителността.

Пример за използване на адаптера на базата на BaseAdapter може да се види, когато създавате GridView със снимки и други примери.

В BaseAdapter има няколко метода, които трябва да бъдат заменени. Например, getCount () метод ви позволява да видите броя на показаните обекти.

Друг важен метод за адаптер - getView (). който е отговорен за създаването на отделни елементи от списъка. Той призова за всеки елемент от списъка, за да се определи кои данни да се покаже. getVew () метод включва параметър convertView. който ви позволява да използвате отново съществуващ елемент списък, който не е показан, защото потребителското го prolistnul с видимата част на дисплея. Ако convertView не е празен, той може да се използва отново, така че да не се зареди списък маркиране. Този подход повишава производителността.

getView () метод връща View. който всъщност ViewGroup контейнер и съдържа други компоненти, например, ImageView или TextView.

Подаръците на обекта (който ще бъде представен) почти всички примери на адаптери. Останете на линия!