画面の回転中にユーザーからのすべての値とクリックを保存しようとしていますが、ボタンのクリックとテキスト ビューが機能しません。このメソッド内に何を書くべきかを理解しようと何時間も費やしましたが、どれもうまくいきませんでした。[ヒントを選択] ボタンからの入力と textView の出力は、現時点では保存されていません。
@Override
protected void onSaveInstanceState(@NonNull Bundle outState) {
super.onSaveInstanceState(outState);
Log.d(TAG, "onSaveInstanceState: Started");
String text = txtNumOfSplits.getText().toString();
int no = Integer.parseInt(text);
outState.putInt("count", no);
String num_of_splits = txtNumOfSplits.getText().toString();
//Convert String to Integer
int no2 = Integer.parseInt(num_of_splits);
outState.putInt("count", no2);
money = Double.parseDouble(edtBillAmount.getText().toString());
outState.putString("bill", String.valueOf(money));
}
@Override
protected void onRestoreInstanceState(@NonNull Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
Log.d(TAG, "onRestoreInstanceState: Started");
String text = txtNumOfSplits.getText().toString();
int no = savedInstanceState.getInt("count");
txtNumOfSplits.setText(no + "");
money = Double.parseDouble(edtBillAmount.getText().toString());
String money = savedInstanceState.getString("bill");
txtTotalBill.setText("Total Bill\n$" + finalAmount.toString());
}
btn_add = findViewById(R.id.btn_add);
btn_subtract = findViewById(R.id.btn_subtract);
btn_20 = findViewById(R.id.btn_20);
btn_15 = findViewById(R.id.btn_15);
btn_10 =findViewById(R.id.btn_10);
btn_calculate = findViewById(R.id.btn_calculate);
btn_reset = findViewById(R.id.btn_reset);
txtBill = findViewById(R.id.txtBill);
txtTip = findViewById(R.id.txtTip);
txtSplit = findViewById(R.id.txtSplit);
txtRoundUp = findViewById(R.id.txtRoundUp);
txtNumOfSplits = findViewById(R.id.txtNumOfSplits);
txtTotalHeading = findViewById(R.id.txtTotalHeading);
txtTotalPerPerson = findViewById(R.id.txtTotalPerPerson);
txtTotalBill = findViewById(R.id.txtTotalBill);
txtTotalTip = findViewById(R.id.txtTotalTip);
txt_switch_error = findViewById(R.id.txt_switch_error);
switchRoundUp = (Switch) findViewById(R.id.switchRoundUp);
switchRoundDown = (Switch) findViewById(R.id.switchRoundDown);
edtBillAmount = findViewById(R.id.edtBillAmount);
horizontalLine = findViewById(R.id.horizontalLine);