На данный момент приложение сохраняет состояние RecyclerView при выходе на рабочий стол через клавишу Home. Однако, если я уйду на другой фрагмент, или выйду на рабочий стол клавишей "Назад", и вернусь обратно во фрагмент- состояние RecyclerView не сохранится!
Как сохраняю сейчас:
@Nullable @BindView(R.id.feedList) RecyclerView recyclerView;
@Override
public void onSaveInstanceState(Bundle outState){
super.onSaveInstanceState(outState);
//If we catch an exception, it means that recyclerView is not yet created.
try{
outState.putParcelable(RECYCLER_VIEW_STATE, recyclerView.getLayoutManager().onSaveInstanceState());
} catch(Exception ex){
ex.printStackTrace();
}
}
@Override
public void onViewStateRestored(@Nullable Bundle savedInstanceState){
super.onViewStateRestored(savedInstanceState);
//If we catch an exception, it means that recyclerView is not yet created.
try{
layoutManagerState = savedInstanceState.getParcelable(RECYCLER_VIEW_STATE);
} catch(Exception ex){
ex.printStackTrace();
}
}
@Override
public void onResume(){
super.onResume();
if(layoutManagerState != null &&
recyclerView != null &&
recyclerView.getLayoutManager() != null){
recyclerView.getLayoutManager().onRestoreInstanceState(layoutManagerState);
}
}
@Override
public void onPause(){
super.onPause();
if(layoutManagerState != null && recyclerView != null){
layoutManagerState = recyclerView.getLayoutManager().onSaveInstanceState();
}
}
Вы можете указать в манифесте атрибут launchMode
равный singleTop
singleTop
—говорит нам о том, что Activity может распологаться в стеке несколько раз. Новая запись в стеке создается только в том случаи, если данная Activity не расположена в вершине стека. Если она на данный момент является вершиной, то у нее сработает onNewIntent()
метод, но она не будет пересоздана.
Если вам это необходимо только для BackStack
, то вы можете через intent передать флаг FLAG_ACTIVITY_SINGLE_TOP
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Имеем ReciclerView, на экране отображается списокСписок обновляется каждые 5 сек
У меня есть List<Document> listOfDocuments = new ArrayList<>() объектов
Есть таблица c полем descriptionКак мне сделать поиск в таблице по этому полю так, чтоб выводились не только записи в которых description полностью совпадает...