Mam fragment, w którym znajduje się RecyclerView
z LinearLayoutManager
, w którym znajdują się elementy CardView
. Po kliknięciu znajduje się przycisk akcji, którego elementy powinny przewijać się do góry. Próbowałem używać scrollToPosition
, a także scrollToPositionWithOffset
z RecyclerView
, a także z LinearLayoutManager
, jak pokazano poniżej. Ale to nie ma żadnego efektu. Dlaczego tak jest? Czy ktoś może mi pomóc?Przewiń do góry w RecyclerView z LinearLayoutManager
I umieściłem RecyclerView
bezpośrednio wewnątrz pliku SwipeRefreshView
w pliku xml. Dzwonię pod numer setFloatingActionButton
, gdy tylko ustawi się adapter na RecyclerView
.
public void setFloatingActionButton(final View view) {
float = (android.support.design.widget.FloatingActionButton) getActivity().findViewById(R.id.float);
float.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mRecyclerView.smoothScrollToPosition(0);
android.support.design.widget.Snackbar.make(view, "Scrolled to Top", android.support.design.widget.Snackbar.LENGTH_SHORT)
.setAction("Ok", new View.OnClickListener() {
@Override
public void onClick(View v) {
LinearLayoutManager llm = (LinearLayoutManager) mRecyclerView.getLayoutManager();
llm.scrollToPosition(0);
}
})
.setActionTextColor(getActivity().getResources().getColor(R.color.coloLink))
.show();
}
});
}
Spróbuj 'mLayoutManager.scrollToPositionWithOffset (0, 0);' – Antrromet
tak próbowałem to .Ale to nie ma wpływu zbyt podobnie jak scrollToPosition. – SRBhagwat
To dziwne, bo nawet ja miałem podobny układ jak twój. Miałem 'RecyclerView' z menedżerem layoutu i to było umieszczone w' SwipeRefreshview', i to działało dla mnie. – Antrromet