4-4アクティビティの状態保存Tips306 アクティビティの状態を保存する方法を把握する
対応Ver:全て
Level2
Answerあくまで、「強制的に終了・再構築」の場合の話
「アクティビティの状態」とは、EditTextに入力中の値や、リストで選択した項目、シークバーでハンドルを引っ張ってスライドさせた値などです。
「アクティビティの状態を保存するかどうか」の議論は、「プログラムのメソッドに寄るものではなく」または、「ユーザーが意図せずに」画面が切り替わったり、終了したりというときのことです。
もともと、プログラム中にメソッドfinishなど、画面を終了させるコードが書いてあるがゆえに終了した場合は、明らかに画面を破棄するという命令ですので、次に画面を呼び出したときには、画面は初期化されます。
また、ユーザが「戻る」ボタンを押したり、他の画面に切り替えたときは、ユーザに画面の状態を破棄する意図があったとみなされ、やはり画面は初期化されます。
一方、プログラムやユーザの意図に関係なく画面が強制的に終了させられる、という状態は、大きく二つに分かれます。
ひとつは、メモリ不足などでシステムがアプリを強制終了する場合です。
もうひとつは、正常な過程で起こる画面の切り替えです。たとえば、画面ロックです。デバイスの縦横が切り替わる場合も、画面は一瞬閉じて、すぐに縦横の切り替わった状態で再構築されます。<
この記事は会員限定です。会員登録をすると続きをお読みいただけます。
ログイン / 新規登録