В зависимости от того, что, как я понимаю, вы хотите сохранить последнюю позицию элемента видимый в вашем RecyclerView, поэтому при возврате в приложение снова прокрутите до последней позиции перед закрытым приложением / действием
Прежде всего вы можете получить последнюю позицию из LayoutManger из RecyclerView следующим образом:
//define LinearLayoutManager object as global because we want to use in another method
linearLayoutManager=new LinearLayoutManager(this);
recyclerView.setLayoutManager(linearLayoutManager);
и теперь мы хотим получить последнюю позицию и сохранить ее, если действие закрыто или go на фоне, используя жизненный цикл активности перезвоните
если вы хотите узнать больше о жизненном цикле активности go до это
так внутри onPause в вашей деятельности добавьте последнюю позицию магазина, используя SharedPrefrane
@Override
protected void onPause() {
super.onPause();
SharedPreferences preferences =getSharedPreferences("Pref",MODE_PRIVATE);
//get last position Visible Item Position
int lastPos= linearLayoutManager.findLastCompletelyVisibleItemPosition();
//store lastPos
preferences.edit().putInt("lastPos",lastPos).apply();
}
знайте, что мы сохраняем последнюю позицию каждый раз, когда активность go на фоне или приложение закрывается
и после получения данных и установите Adapter, восстановите последнюю позицию, добавив, и вызовите этот метод
private int getLastItemPosition(){
SharedPreferences preferences =getSharedPreferences("Pref",MODE_PRIVATE);
return preferences.getInt("lastPos",0);
}