Wenn ich neue Daten zu meinem RecycleView hinzufüge, wenn ich oben in der Ansicht bin, dann werde ich ein wenig runtergescrollt. Wie scrolle ich korrekt zum Anfang eines RecycleView? Ich habe versucht:Wie scrollt man nach oben von RecycleView?
boolean isAtTop = !mRecyclerView.canScrollVertically(-1);
mRecyclerAdapter.updateMessageItemDataList(mMessageItems);
if (isAtTop)
mRecyclerView.scrollToPosition(0);
Aber das tut nichts (ich werde immer noch ein wenig heruntergerollt). Ich suchte auf Stack-Überlauf und fand die folgenden, die noch nicht anythnig machen:
boolean isAtTop = !mRecyclerView.canScrollVertically(-1);
mRecyclerAdapter.updateMessageItemDataList(mMessageItems);
if (isAtTop)
((LinearLayoutManager)mRecyclerView.getLayoutManager()).scrollToPositionWithOffset(0, 0);
isAtTop immer richtig erkannt wird, aber meine Versuche, bis an die Spitze zu blättern zurück nie funktionieren. Hat jemand jemals ein ähnliches Problem festgestellt?
Es ist wirklich komisch, weil ich mich richtig auf den unteren Rand der Ansicht blättern kann
mRecyclerView.scrollToPosition(mRecyclerAdapter.getItemCount() - 1);
Vielleicht weil es 'sein muss, wenn (! isAtTop)' – Vucko
Nein, ich will nur blättern th Oben, wenn es bereits oben war, bevor neue Daten hinzugefügt wurden. – CaptainForge
Ah, okay, ich habe es dann falsch verstanden. Haben Sie [diese Frage] (http://stackoverflow.com/questions/32159724/scroll-to-top-in-recyclerview-with-linearlayoutmanager) versucht? – Vucko