Ich möchte sicherstellen, dass die Liste ganz nach unten gescrollt wird, nachdem ich die Listenansicht mithilfe von listAdapter aktualisiert habe, damit das zuletzt in die Liste eingegebene Element angezeigt wird. Wie kann ich das machen ?
Ich habe es versucht, aber kein Glück:
lv.setTranscriptMode(ListView.TRANSCRIPT_MODE_ALWAYS_SCROLL);
Vielen Dank
Antworten:
Angenommen, Sie wissen, wann sich die Listendaten geändert haben, können Sie die Liste manuell anweisen, nach unten zu scrollen, indem Sie die Listenauswahl auf die letzte Zeile setzen. Etwas wie:
quelle
Sie müssen diese Parameter in Ihrer Listenansicht verwenden:
Scrollen
lv.setTranscriptMode(ListView.TRANSCRIPT_MODE_ALWAYS_SCROLL);
Setzen Sie den Kopf der Liste nach unten
lv.setStackFromBottom(true);
Sie können diese Parameter auch in XML einstellen, z. so was:
quelle
Eine Kombination aus TRANSCRIPT_MODE_ALWAYS_SCROLL und setSelection hat es für mich funktioniert
quelle
Ich habe dies als Reaktion auf einen Klick auf eine Schaltfläche erfolgreich verwendet. Ich denke, dass Sie es auch verwenden können, nachdem Sie Ihren Inhalt aktualisiert haben:
quelle
So erhalten Sie dies in einem ListFragment:
Diese Antwort wurde hinzugefügt, da jemand, der eine Google-Suche nach demselben Problem mit ListFragment durchführt, diese nur findet.
Grüße
quelle
Verwenden von: Setzen Sie den Kopf der Liste nach unten
lv.setStackFromBottom(true);
Hat bei mir funktioniert und die Liste wird automatisch nach unten gescrollt, wenn sie zum ersten Mal sichtbar gemacht wird. Die Liste scrollt dann wie es sollte mit
TRANSCRIPT_MODE_ALWAYS_SCROLL
.quelle
ich benutze
Um Einträge unten hinzuzufügen, und ältere Einträge scrollen oben wie ein Chat-Transkript
quelle
getListView().smoothScrollToPosition(getListAdapter.getCount() - 1);
onstart auf, um zu Beginn der Aktivität nach unten zu scrollen.Die einfachste Lösung ist:
quelle
Der Transkriptionsmodus ist genau das, was Sie möchten und wird von Google Talk und der SMS / MMS-Anwendung verwendet. Rufen Sie notifyDatasetChanged () auf Ihrem Adapter korrekt auf, wenn Sie Elemente hinzufügen?
quelle