W Androidzie Adapter
działa jako pomost między widokiem a modelem danych. Możesz wyświetlić n TextViews
w ListView
lub GridView
, a gdy użytkownik doda lub usunie notatkę, lokalna lub serwerowa baza danych jest najpierw aktualizowana. Po zakończeniu wywołania usługi sieciowej i/lub aktualizacji lokalnej bazy danych, nowe dane są dodawane do bazowego Adapter
. View
jest następnie odświeżana przez wywołanie adapter.notifyDataSetChanged()
. To byłby sposób na zrobienie tego.
Podejścia:
- Jeśli aktualizujesz lokalny
SQLite
bazy danych, możesz rozważyć użycieCursorAdpater
do przechowywania danych dlaView
, ponieważ bezpośrednio mapuje wpisy w lokalnej bazie danych doView
. - Jeśli korzystasz z
ContentProvider
, można nawet połączyćCursorAdapter
zLoaderManager
iCursorLoader
:te podłącza się doActivity
/Fragment
cykl życia i monitoruj podstawowyContentProvider
dla zmian, które są publikowane automatycznie wView
w osobnym wątku. - Możliwe jest również użycie
Filter
w połączeniu zAdapter
aby zdefiniować dynamiczny mechanizm, który sortuje wpisy danych w locie. Filtrowanie jest wykonywane przezFilter
w osobnym wątku, zgodnie z zapytaniem wprowadzonym przez użytkownika, być może wAutoCompleteTextView
.
Referencje:
- Zobacz Pobieranie listy kontaktów instruktaż. Przykład tutaj pobiera zestaw kontaktów z kontaktów
ContentProvider
oparte na dynamicznym, alfabetycznym wyszukiwaniu przez użytkownika. WykorzystujeCursorAdapter
,CursorLoader
iLoaderManager
monitorować i aktualizować dane, a wyniki wyszukiwania wyświetla wListView
. - Zobacz także Wyszukiwanie w czasie rzeczywistym (natychmiastowe) Androida z klasą filtra przykład, który pokazuje, jak
Filter
ma być używany. - Android AutoCompleteTextView z filtrowaniem adaptera niestandardowego .
- Android AutocompleteTextView za pomocą ArrayAdapter i Filter .