画面の向きの変更時にインスタンスを保存する際に問題があります。特定の構造を持つ配列があります。
private ArrayList <MyObject> myArr;
そして、この構造は次のとおりです。
public MyObject{
public variable1;
//..... many variables here and one array :)
}
「myArr」配列を保存する必要があります。この「変数」を保存するにはどうすればよいですか?
画面の向きの変更時にインスタンスを保存する際に問題があります。特定の構造を持つ配列があります。
private ArrayList <MyObject> myArr;
そして、この構造は次のとおりです。
public MyObject{
public variable1;
//..... many variables here and one array :)
}
「myArr」配列を保存する必要があります。この「変数」を保存するにはどうすればよいですか?
基本的に、 Android Activity API Refで説明されている方法を使用して、インスタンスを保存する必要があります。使用する必要がありますonSaveInstanceState(Bundle)
。また、 android:configChanges="orientation"
アクティビティのマニフェストを設定して、アクティビティの再生成を防ぐことができます (したがって、状態を保存する必要はありません)。
質問のオブジェクトをonSaveInstanceState(Bundle)
バンドルに保存するには:
MyObject
(たとえば、例はここにあります)。onSaveInstanceState()
元に戻します。onCreate()