Bei Android der Adapter
fungiert als Brücke zwischen der Ansicht und dem Datenmodell. Sie könnten das n anzeigen TextViews
entweder in einer ListView
oder eine GridView
, und wenn der Benutzer eine Notiz hinzufügt oder löscht, wird zuerst die lokale oder Serverdatenbank aktualisiert. Nach Abschluss des Webservice-Aufrufs und/oder der lokalen Datenbankaktualisierung werden die neuen Daten dem zugrunde liegenden Adapter
hinzugefügt . Die View
wird dann durch Aufruf von adapter.notifyDataSetChanged()
aktualisiert . Dies wäre der Weg, es zu tun.
Ansätze:
- Bei Aktualisierung des lokalen
SQLite
Datenbank, könnten Sie die Verwendung einesCursorAdpater
in Betracht ziehen um die Daten für dieView
zu halten , da es die Einträge in der lokalen Datenbank direkt derView
zuordnet . - Bei Verwendung eines
ContentProvider
, es ist sogar möglich, einenCursorAdapter
zu kombinieren mit einemLoaderManager
und einCursorLoader
:Diese werden in dieActivity
gesteckt /Fragment
Lebenszyklus und überwachen den zugrunde liegendenContentProvider
für Änderungen, die automatisch in derView
veröffentlicht werden in einem separaten Thread. - Es ist auch möglich, einen
Filter
zu verwenden in Verbindung mit demAdapter
um einen dynamischen Mechanismus zu definieren, der die Dateneinträge on-the-fly sortiert. Die Filterung erfolgt durch denFilter
in einem separaten Thread, gemäß einer vom Benutzer eingegebenen Abfrage, möglicherweise in einerAutoCompleteTextView
.
Referenzen:
- Siehe Abrufen einer Kontaktliste Lernprogramm. Das Beispiel hier ruft eine Reihe von Kontakten aus dem
ContentProvider
der Kontakte ab basierend auf einer dynamischen, alphabetischen Suche durch den Benutzer. Es verwendetCursorAdapter
,CursorLoader
undLoaderManager
um die Daten zu überwachen und zu aktualisieren, und es zeigt die Suchergebnisse in einerListView
an . - Siehe auch die Android-Echtzeitsuche (Sofortsuche) mit Filterklasse Beispiel, das zeigt, wie ein
Filter
verwendet werden soll. - Android AutoCompleteTextView mit benutzerdefinierter Adapterfilterung .
- Android AutocompleteTextView mit ArrayAdapter und Filter .