私は現在、ユーザーによって自己占有されているlistview
を持っています。ユーザーがアクティビティを離れて戻ったときに、ユーザーが追加したすべてがまだlistview
にあるようにしたいと思います。私はonSaveInstanceStateについて読んでいますが、それが正しい方法であるかどうかはわかりません。どんな助けでも大歓迎です。ありがとう。Android - アクティビティの状態とリストの表示アイテムを保存します
答えて
ユーザーがデータを入力していて、そのデータがどこかにストアされていると仮定しています(SQLite、クラウドなど)。ユーザーが入力した内容(「新規」をクリックして新しいリスト項目を入力し、データベースに移動してリストを更新するとすぐに)を積極的に保存することをおすすめします。したがって、アプリケーションonResume()が呼び出されると、そのソースからデータを取得し、リストビューを再設定することができます。 SharedPreferencesに一時的に保存するのは煩雑です(項目のリストについて)。
あなたが必要とするものではありません。 onSaveInstaceState
は、ユーザーが明示的にリソースを終了した場合ではなく、リソースを再利用するためにシステムがアクティビティを強制終了する前にインスタンスを保存します。
ユーザーが入力するたびに活動状態を保存することを忘れた場合は、同じ状態を維持するために、コンテンツプロバイダを使用してファイル/共有プリファレンスにデータを保存する必要があります。 1つのリストビューのアイテムのローカルデータを保存するだけであれば、非常に簡単で直感的なので共有設定を使用することをおすすめします。それらについてはhereを読んでください。
離脱する間にアクティビティが破棄されない場合、データはユーザーが残した場所にある必要があります(再開時に再初期化を行わない限り)。しかし、Androidは必要に応じてリソースを解放する可能性があるため、それを期待することはできません。非実行アクティビティは、そのような行為の犠牲になる可能性があります。
したがって、データを永続ストレージに保存する必要があります。それがこのアクティビティのためのものであり、それがほんの少量のデータであるなら、SharedPreferencesは良いと簡単な解決策です。 onPause()に保存すると、onResume()に読み込まれます。アクティビティを前面に出して電話が切れると、データが失われます。
ファイルを使用することはお勧めしませんが、SQLiteについて考えるよりも、異なるビュー、処理、並べ替え、フィルタリングなどの方法でデータにアクセスする必要がある場合はこの方法をお勧めします。
- 1. Androidは全体の状態を保存しますアクティビティ
- 2. Androidのアクティビティの状態と内容を保存する
- 3. GWTのアクティビティ状態を保存する
- 4. RecyclerViewリストの保存状態
- 5. アクティビティの状態を保存して復元しますか?
- 6. アクティビティ保存状態の問題
- 7. アクティビティのボタンの状態を保存します。
- 8. Android - 新しいアクティビティを開始するとアクティビティの状態を保存します
- 9. アクティビティの状態android
- 10. Android:クロノメーター保存状態
- 11. Androidのユーザーログインログアウト状態を保存する
- 12. ゲームの状態を保存するAndroid
- 13. Androidの設定/非表示の状態での設定のアクティビティ
- 14. アクティビティの状態をフリーズ - Android
- 15. Android - リストビューでチェックボックスの状態を保存
- 16. Androidでの状態の保存
- 17. AndroidのSharedPreferencesファイルにCheckBoxの状態を保存します
- 18. フラグメントの状態を保存します。
- 19. Androidカスタムリストビューのチェックボックス保存状態
- 20. Android - フラグメント内にViewpagerの状態を保存しています
- 21. アンドロイドでアクティビティの状態を保存する方法は?
- 22. メディア内のアクティビティ状態を保存する
- 23. アクティビティ間にスピナーの状態を保存する
- 24. テーブルビューの状態を保存する/テーブルビューのテキストの状態を保存する
- 25. リストのアイテムを変更するレンダリングはビューの状態に依存します
- 26. Android - PagerAdapterはラジオボタンの状態を保存していません
- 27. 異なるアイテムのUITableView状態を保存する方法
- 28. アクティビティの状態を正しく保存して復元する方法は?
- 29. RecycleViewでアイテムのレイアウト状態を保存して復元します
- 30. Androidスタジオ状態からのボタンの非表示と表示