回答編集履歴
1
コメントに対する返答
test
CHANGED
@@ -3,3 +3,33 @@
|
|
3
3
|
|
4
4
|
|
5
5
|
* [AndroidのWebView復帰処理について](https://qiita.com/sokume2106/items/ee9050230f84026b121d)
|
6
|
+
|
7
|
+
|
8
|
+
|
9
|
+
---
|
10
|
+
|
11
|
+
コメントを受けて。
|
12
|
+
|
13
|
+
|
14
|
+
|
15
|
+
> [https://stackoverflow.com/questions/60875538/save-state-of-fragment-a-when-navigating-from-bottomnavigationview-to-fragment-b](https://stackoverflow.com/questions/60875538/save-state-of-fragment-a-when-navigating-from-bottomnavigationview-to-fragment-b)
|
16
|
+
|
17
|
+
> こちらの理由でダメなようです。
|
18
|
+
|
19
|
+
|
20
|
+
|
21
|
+
`BottomNavigationView`もNavigationComponentも使った事がないのであまりあーだこーだ言えないですが、Activityがどうこうよりも、NavigationComponentがまともなfragmentのライフサイクルの管理をしていないように見えますね…。
|
22
|
+
|
23
|
+
少なくとも、`ViewPager2`で使用する`FragmentStateAdapter`や、前身の`ViewPager`で使用する`FragmentStatePagerAdapter`はその辺りはしっかりやっていますけど。(ちゃんと`onDestroyView`が呼ばれる前に`onSaveInstanceState`が呼ばれている)
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
ただ、問題はfragmentの問題であり、`WebView#saveState`がダメだという話ではないので、自分でライフサイクルを管理されてはいかがですか。
|
28
|
+
|
29
|
+
(`onSaveInstanceState`が呼ばれないだけであれば、`onDestroyView`で`WebView#saveState`を呼んで状態を保存できるのではないですか。)
|
30
|
+
|
31
|
+
|
32
|
+
|
33
|
+
もっとも、心配はむしろ`WebView#saveState`が**どこまで保存されるか**ですけどね。
|
34
|
+
|
35
|
+
それなりに大きなサイトを開いているのであれば、`WebViwe#restoreState`でもそれなりに時間はかかると思います。(まぁやらないよりはマシでしょうけど)
|