最新の記事アプリケーションアクティビティ、インテント、サービスについてデバイスAndroidでのデバイス制御について。地磁気センサ、加速度センサなどマルチメディアグラフィックス、音楽や動画再生などマルチメディア処理についてユーザインターフェースAndroidのユーザインターフェイスについて、またユーザインターフェイスを提供するコンポーネントの話題について。リソースAndroidでのアイコン、画像、文字列、ローカライゼーションなどHacksマッシュアップ開発環境Androidの開発環境など。コメントはまだありませんonSaveInstanceStateメソッドを使ってActivityのインスタンスを保存/復帰させる方法を紹介します。onSaveInstanceState/onRestoreInstanceStateメソッドは永続的なデータ保存には利用できませんが、一時的にインスタンスを保存するケースでは威力を発揮します。アプリケーションを起動する際、現在表示されているアプリケーションはbackgroundにまわり、新しいアプリが起動します。backgroundに回ったアプリケーションはAndroidのアプリケーション履歴の”backstack”モデルに従い、履歴としてスタックします。Android端末のメモリが豊富に残っていれば、backgroundのActivityのインスタンスは維持されますが、メモリが少なくなった際は破棄されます。onSaveInstanceState/onRestoreInstanceStateメソッドが役立つのは”システムによりインスタンスが破棄されるケース(次に表示されるまでにしばらく間があったとき)”です。エミュレータ上では自分以外のアプリケーションが存在することが少ないため、注意が必要です。インスタンスの保存/復帰onSaveInstanceStateメソッドは全てのシチュエーションで呼ばれるわけではありません。保存する必要があるデータなどはライフサイクルモデルに従い、onPauseメソッドを利用してください。savedInstanceState)Bundleより復帰するサンプルコード続きをどうぞonSaveInstanceStateメソッドではBundleを使ってデータを保存します。}今回は、10行目のようにBundle#putStringを例として利用しています。詳しく記載されています。}onRestoreInstanceStateメソッドではonSaveInstanceStateメソッドで利用したBundleを受け取り、インスタンスを復帰させることができます。サンプルでは、7行目で保存した文字列を取得して、10行目でTextViewに表示しています。Authormhidakaエンジニア。Androidと組込とRe:VIEW。techbooster主催。ひつじと呼ばれてます。2.0(β)に対応した解説書です。TechBooster.TechBoosterについて。