私のコードでは、カードクラスを作成しました。後でグリッドビューにたくさんのカードを表示します。画面の向きを変えると、すべてのカードが失われます。前の質問で、私は正しい方向に向けられました。
さて、私がAndroidのドキュメントとここStackOで見つけたのは、
@Override
protected void onSaveInstanceState(Bundle outState) {
outState.putInt(...);
super.onSaveInstanceState(outState);
}
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
some_int_var = savedInstanceState.getInt(...);
super.onRestoreInstanceState(savedInstanceState);
}
BundleオブジェクトにはputString、Charなどのメソッドがいくつかあるので、これで問題ありません。プリミティブと文字列です。しかし、私のカードはどうですか?それらはベクトル内のCardオブジェクトであるため、これらのメソッドは使用できません。
onRetainNonConfigurationInstanceを使用せずに、またはアクティビティのリセットを防止せずに、そのベクトルを復元するにはどうすればよいですか?Androidのドキュメントでは、再起動するデータが大量にある場合にこれを行うことをお勧めしますが、私の場合はそうではありません。