Мое приложение вращается вокруг HomeActivity, которая содержит 4 вкладки внизу. Каждая из этих вкладок является фрагментом, все они добавляются (не заменяются) с самого начала и скрываются/показываются при нажатии на соответствующую вкладку.
Моя проблема в том, что всякий раз, когда я меняю вкладку, состояние моей прокрутки теряется. Каждый фрагмент, демонстрирующий эту проблему, использует android.support.v4.widget.NestedScrollView
(см. пример ниже).
Примечание. Мои фрагменты, использующие RecyclerView или ListView, по какой-то причине сохраняют состояние прокрутки.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<include layout="@layout/include_appbar_title" />
<android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- Content -->
</android.support.v4.widget.NestedScrollView>
</LinearLayout>
Я прочитал несколько сообщений о сохранении состояния экземпляра (этот, этот, например), и их решение либо не работает в моем сценарии, либо непрактично для реализации с учетом У меня есть 4-12 различных фрагментов, которые мне нужно изменить, чтобы заставить его работать.
Каков наилучший способ, чтобы представление вложенной прокрутки сохраняло положение прокрутки при изменении фрагмента?