Ich habe ListView
innerhalb NestedScrollView
(RecycleListView nicht verwenden) in meinem Fragment. Listen Adapter init in onCreate
und nicht neu erstellt, wenn App zurück zu dem Fragment von anderen Fragment. Aber meine NestedScrollView scrollt dann nach oben (kann ich das verhindern?). Ohne NestedScrollView
bleibe mein ListView an der gleichen Stelle.Verhindern NestedScrollView scrollt nach oben automatisch
Antwort
Entfernen Sie @ string/appbar_scrolling_view_behavior aus dem NestedScrollView-Layout.
Sie sollten den Listenstatus in onPause()
Methode auf dem Fragment (speichern Sie es im Bundle) und dann lesen und setzen Sie es in onResume()
. Einfach einen konstanten Schlüssel erstellen, speichern und dann lesen :-)
Der Wert, den Sie speichern möchten, ist wahrscheinlich getScrollY()
. Dann wollen Sie es mit scrollTo(int x, int y)
wiederherstellen, wobei x = 0 und y = savedValue.
Auch Sie tunRecyclerView
verwenden wollen :-) Es ist wirklich cool und funktioniert wirklich gut mit NestedScrollView
und CoordinatorLayout
. Außerdem ist es viel einfacher und schneller zu implementieren als ListView
, sobald Sie den Dreh raus haben. Es ist auch sehr leicht. Und ich hatte es einmal gesehen, einen Welpen vor einem Feuer zu retten. RecyclerView ist da Mann! :-D
Dies funktioniert nicht –