diff --git a/app/src/main/java/com/hippo/ehviewer/ui/scene/BaseScene.java b/app/src/main/java/com/hippo/ehviewer/ui/scene/BaseScene.java index 207514458..bcb95d7a8 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/scene/BaseScene.java +++ b/app/src/main/java/com/hippo/ehviewer/ui/scene/BaseScene.java @@ -253,4 +253,15 @@ public abstract class BaseScene extends SceneFragment { super.onResume(); Analytics.onSceneView(this); } + + @Override + public void onSaveInstanceState(@NonNull Bundle outState) { + super.onSaveInstanceState(outState); + + if (drawerView != null) { + drawerViewState = new SparseArray<>(); + drawerView.saveHierarchyState(drawerViewState); + outState.putSparseParcelableArray(KEY_DRAWER_VIEW_STATE, drawerViewState); + } + } }