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
SQLitedatabas kan du överväga att använda enCursorAdpaterfö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 enCursorAdaptermed enLoaderManageroch enCursorLoader:dessa ansluts tillActivity/Fragmentlivscykel och övervaka den underliggandeContentProviderför ändringar som publiceras automatiskt iViewi en separat tråd. - Det är också möjligt att använda ett
Filteri kombination medAdapteratt definiera en dynamisk mekanism som sorterar datainmatningarna i farten. Filtreringen utförs avFilterpå 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
ContentProviderbaserat på en dynamisk, alfabetisk sökning av användaren. Den använder sig avCursorAdapter,CursorLoaderochLoaderManagerfö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
Filterska användas. - Android AutoCompleteTextView med anpassad adapterfiltrering .
- Android AutocompleteTextView med ArrayAdapter och Filter .