問題タブ [android-savedstate]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - フラグメントが保存されたインスタンスから復元されたときに、editText がテキストを自動入力しないようにするにはどうすればよいですか?
複数のフラグメントを保持して表示するアクティビティがあります。
フラグメントを再入力すると、すべての editTexts にテキストが自動的に入力されます。同様に、すべてのフィールドに同じテキスト。
例:
フラグメントを開き、次の 2 つの editText にテキストを入力します:
CustomEditText1: [______]
CustomEditText2: [_acb__]
CustomEditText3: [_qwe__]
戻るボタンをクリックして、フラグメント
CustomEditText1: [_qwe__]
CustomEditText2: [_qwe__]
CustomEditText3: [_qwe__ ] を再入力します。
これは、フラグメントで上書きされたメソッドです。
デバッグすると、オーバーライドされた OnTextChanged 内でブレークポイントを設定することにより、editText がテキストを設定していることがわかります。
これはそのブレークポイントからのスタック トレースです:
(NASEditText は私のカスタム ビューです)
2 つの問題 / 質問:
- フラグメントが復元されたときに、アクティビティ/フラグメント/editText がフィールドのテキストに入力されないようにするにはどうすればよいですか?
- すべてのフィールドに同じテキストが入力されるのはなぜですか?
android - ネストされた RouterPagerAdapter が回転時に状態を復元しない
を持つルート コントローラRouterPagerAdapter
は、独自の を持つコントローラ A をホストしますRouterPagerAdapter
。
コントローラ A1 はコントローラ A によってホストされます
回転時に、ルート コントローラ、A、および A1 はそれぞれの を受け取りますonSaveInstanceState/onSaveViewState
が、A も A1 も を受け取りませんonRestoreInstanceState/onRestoreViewState
。
これはなぜですか?すべての子の状態が確実に復元されるようにするための正しい実装は何ですか?
android - savedInstanceState が null でない場合
onSaveInstanceState()
可能性がある を明示的に呼び出さない場合、savedInstanceState
が null でないのはonCreate
いつですか?
クラッシュ後にシステムがアプリを再作成すると、1 つのオプションが表示されますが、 savedInstanceState
null ではありません。
他のオプションはどれですか?