Chcę wiedzieć, kiedy , gdzie i jak używane są adaptery w kontekście Androida.
Informacje z dokumentacji programisty Androida były dla mnie niewystarczające i chciałbym uzyskać bardziej szczegółową analizę.
źródło
Chcę wiedzieć, kiedy , gdzie i jak używane są adaptery w kontekście Androida.
Informacje z dokumentacji programisty Androida były dla mnie niewystarczające i chciałbym uzyskać bardziej szczegółową analizę.
Załóżmy, że chcesz wyświetlić listę w swojej aplikacji na Androida. W tym celu użyjesz ListView
dostarczonego przez Androida.
ListView
w rzeczywistości same nie zawierają żadnych danych. To tylko element interfejsu użytkownika bez danych. Możesz wypełnić swoje ListView
pliki za pomocą adaptera Android.
Adapter
to interfejs, którego implementacje dostarczają dane i sterują wyświetlaniem tych danych.
ListView
własne adaptery, które całkowicie kontrolują ListView
wyświetlacz. Tak więc adaptery kontrolują zawartość wyświetlaną na liście, a także sposób jej wyświetlania.
Adapter
Interfejs obejmuje różne sposoby komunikowania danych do systemu ListView
. Możesz stworzyć swój własny adapter od podstaw, implementując BaseAdapter
.
public class ArrayAdapter<T> extends BaseAdapter implements Filterable {
// One of the constructors
public ArrayAdapter(Context context, int resource, int textViewResourceId, T[] objects) {
init(context, resource, textViewResourceId, Arrays.asList(objects));
}
void manyMoreMethods(){}
}
Zdefiniujmy adapter:
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, android.R.id.text1, values);
TextView
do którego zapisywane są daneAdaptery w systemie Android są w zasadzie pomostem między komponentami UI a źródłem danych, które wypełniają dane do komponentu UI
Na przykład listy (składnik interfejsu użytkownika) są wypełniane za pomocą adaptera list z tablicy źródła danych.
Chciałbym podzielić się moim zrozumieniem.
Analogia
Weźmy na przykład ładowarkę mobilną, a raczej kabel USB. Przewód można traktować jako adapter, natomiast źródło danych i układ można rozumieć odpowiednio jako gniazdo (punkt wtyku) i port USB (punkt ładowania).
W przypadku ładowania mobilnego źródło zasilania może być inne, np. Ładowanie z powerbanku, gniazdka czy laptopa. To samo dotyczy adapterów używanych w systemie Android. Źródło danych może ulec zmianie w zależności od wymagań aplikacji.
Krótko mówiąc, adapter w systemie Android przenosi dane ze źródła (np.
ArrayList<>
) I dostarcza je do układu (plik .xml).źródło
Adaptery w systemie Android są pomostem między widokiem adaptera (np.
ListView
) A podstawowymi danymi tego widoku. Wyobraź sobie, jak wyglądałby świat bez adapterów!Przykłady
Widok pokazujący elementy na liście przewijanej w pionie. Elementy pochodzą z
ListAdapter
powiązanego z tym widokiem.ListAdapter
Definiuje układ dla poszczególnych wierszy listy i dostarcza dane doListView
pośrednictwemsetAdapter()
metodyListView
.Android udostępnia kilka standardowych adapterów; najważniejsze to
ArrayAdapter
iCursorAdapter
.ArrayAdapter
może obsługiwać dane w oparciu o tablice lub listy.SimpleCursorAdapter
może obsługiwać dane związane z bazą danych.źródło
Adaptery są zasadniczo używane do dostarczania treści. Jednym z adapterów, które prawdopodobnie masz w każdej aplikacji, jest CursorAdapter, który umożliwia dostarczanie treści podawanej przez kursor z zapytania do bazy danych. ListView prawie zawsze ma jakiś rodzaj adaptera.
źródło
Adapter działa jako pomost między
AdapterView
danymi a bazowymi danymi tego widoku. Adapter zapewnia dostęp do elementów danych i jest odpowiedzialny za tworzenie widoku dla każdego elementu w zestawie danych.Adaptery to sprytny sposób na połączenie
View
z jakimś źródłem danych. Zwykle Twój widok byłby a,ListView
a dane miałyby postaćCursor
lubArray
. Więc adaptery są podklasyCursorAdapter
lubArrayAdapter
.źródło
Adapter zarządza modelem danych i dostosowuje go do poszczególnych wierszy w widoku listy. To rozszerza
BaseAdapter
klasę.Każdy wiersz w widoku listy składa się z układu, który może być tak złożony, jak chcesz. Typowa linia w widoku listy ma obraz po lewej stronie i dwie linie tekstu pośrodku.
źródło
Adapter służy po prostu do osiągnięcia koncepcji widoku listy. Nie tylko do wyświetlania listy danych, ale także do niestandardowego widoku. Załóżmy, że klient chce skorzystać z listy, która ma większą liczbę widoków tekstowych (jakikolwiek inny widok), wtedy musimy skorzystać z widoku Adaptera w systemie Android.
źródło
Podano już wiele odpowiedzi, ale chcę udzielić innej odpowiedzi.
Adapter oznacza, że możesz to zrobić Jego dostawca mostu .
Adaptery to łącze między zestawem danych a elementem AdapterView wyświetlającym dane.
źródło
Na koniec adaptery są bardzo przydatne do sporządzenia raportu. Chcąc pokazać jakieś informacje w raporcie, można skorzystać z tego narzędzia, aby pokazać dane na widoku.
źródło