onRestoreInstanceState() メソッドで問題が発生しています。この SumWindow アクティビティは、ユーザーにいくつかの質問を表示し、変数の試行と権限にユーザーのスコアを格納します。問題: ユーザーが [戻る] を押してから、メイン メニューから [再生] を押した場合。(SumWindow アクティビティ get が作成する場所) スコアは 0 のうち 0 にリセットされます。この保存/読み込みで何か基本的なことが欠けていると確信しています。これは私のコードです(読みやすいように簡略化されています)
public class SumWindow extends Activity implements OnClickListener {
int tries;
int rights;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (savedInstanceState != null) {
tries = savedInstanceState.getInt("tries");
right = savedInstanceState.getInt("right");
}
@Override
public void onSaveInstanceState(Bundle savedInstanceState) {
super.onSaveInstanceState(savedInstanceState);
savedInstanceState.putInt("tries", tries);
savedInstanceState.putInt("rights", rights);
}
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
tries = savedInstanceState.getInt("tries");
right = savedInstanceState.getInt("rights");
}