Dies ist, wie ich es tat:
Ihre Artikel (Zeilen) müssen eindeutige IDs haben, damit Sie sie später aktualisieren können. Legen Sie das Tag für jede Ansicht fest, wenn die Liste die Ansicht vom Adapter erhält. (Sie können auch Schlüssel-Tag verwenden, wenn der Standard-Tag irgendwo anders verwendet wird)
@Override
public View getView(int position, View convertView, ViewGroup parent)
{
View view = super.getView(position, convertView, parent);
view.setTag(getItemId(position));
return view;
}
Für die Update-Prüfung jedes Element Liste, wenn eine Ansicht mit angegebener ID ist es sichtbar und Update muss auf mich durchgeführt werden.
Es ist tatsächlich einfacher als andere Methoden und besser, wenn Sie mit Ids nicht Positionen beschäftigen! Außerdem müssen Sie das Szenario in Betracht ziehen, wenn Ihre Ansicht unsichtbar und wieder sichtbar wird.
in der Tat, notify ... teilt der Liste mit, dass der Adapter geändert wurde. Ich bin mir nicht sicher, ob Sie ein Element nach dem anderen aktualisieren können. – Sephy
Hier ist eine ähnliche Frage SO: http://stackoverflow.com/questions/3724874/android-update-single-item-in-list –
Googler, beachten Sie bitte ** Diese Fragen sind sehr, sehr alt **. Für modernes Android (2014+) verwenden Sie einfach notifyDatasetChanged. es ist unglaublich effizient und nur neu gezeichnet, was auf dem Bildschirm ist. Heutzutage ist es wichtig, das moderne "HolderView" -Muster zu verwenden. Es ist alles kein Problem. – Fattie