Как сохранить позицию прокрутки в reyclerview? - PullRequest
0 голосов
/ 04 марта 2020

В упражнении 1 я использовал представление рециркулятора для хранения изображений, загруженных с firebase. При нажатии на изображение открывается активность 2, чтобы показать описание изображения. Как сохранить позицию прокрутки действия 1 (когда я нажимаю кнопку вверх в act2, она должна go перейти к предыдущей позиции прокрутки в act1)

1 Ответ

0 голосов
/ 04 марта 2020

Store firstVisiblePosition из LayoutManager из RecyclerView

firstVisiblePosition = ((LinearLayoutManager)rv.getLayoutManager()).findFirstCompletelyVisibleItemPosition();

или

Сохранение позиции щелчка.

Затем, registerReceiver с экземпляром BroadcastReceiver, используя LocalBroadcastManager.getInstance(this).registerReceiver(broadCastListener, filter) в Activity1

И отправьте сообщение, используя LocalBroadcastManager.getInstance(this) из Activity2

Увеличьте значение firstVisiblePosition при получении обратного вызова в BroadcastReceiver.onReceive

Наконец в onResume

((LinearLayoutManager) rv.getLayoutManager()).scrollToPosition(firstVisiblePosition);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...