I Android, Adapter
fungerar som en brygga mellan vyn och datamodellen. Du kan visa n TextViews
i antingen en ListView
eller en GridView
, och när användaren lägger till eller tar bort en anteckning uppdateras den lokala databasen eller serverdatabasen först. När webbtjänstanropet och/eller den lokala databasuppdateringen har slutförts läggs den nya data till den underliggande Adapter
. View
uppdateras sedan genom att anropa adapter.notifyDataSetChanged()
. Detta skulle vara sättet att göra det.
Tillvägagångssätt:
- Om du uppdaterar den lokala
SQLite
databas kan du överväga att använda enCursorAdpater
för att lagra data förView
, eftersom den direkt mappar posterna i den lokala databasen tillView
. - Om du använder en
ContentProvider
, är det till och med möjligt att kombinera enCursorAdapter
med enLoaderManager
och enCursorLoader
:dessa ansluts tillActivity
/Fragment
livscykel och övervaka den underliggandeContentProvider
för ändringar som publiceras automatiskt iView
i en separat tråd. - Det är också möjligt att använda ett
Filter
i kombination medAdapter
att definiera en dynamisk mekanism som sorterar datainmatningarna i farten. Filtreringen utförs avFilter
på en separat tråd, enligt en fråga som angetts av användaren, eventuellt i enAutoCompleteTextView
.
Referenser:
- Se Hämta en lista över kontakter handledning. Exemplet här hämtar en uppsättning kontakter från kontakternas
ContentProvider
baserat på en dynamisk, alfabetisk sökning av användaren. Den använder sig avCursorAdapter
,CursorLoader
ochLoaderManager
för att övervaka och uppdatera data, och det visar dessa sökresultat i enListView
. - Se även Android-sökning i realtid (omedelbar) med filterklass exempel, som visar hur ett
Filter
ska användas. - Android AutoCompleteTextView med anpassad adapterfiltrering .
- Android AutocompleteTextView med ArrayAdapter och Filter .