То, что я пытаюсь сделать, это сохранить некоторые цифры в активности, чтобы я мог добавить их к большему количеству чисел, когда действие начнется снова.Сохранение данных и их использование
Я попытался сохранения номера в режиме паузы, а затем добавить их на новые номера в на Резюме, это своего рода работал, но когда я повернуть телефон снова добавляет сохраненные номера, Что лучший способ пойти об этом
немного кода
if (getIntent().hasExtra("ResultBl100")) {
editbl.setText(bl100 + "");
numberOfBl = Integer.parseInt(editbl.getText().toString());
totalSd = (float) (numberOfBl * 0.0024);
editsd.setText(String.format("%.1f", totalSd));
b = Float.parseFloat(editsd.getText().toString());
totalCt = (int) Math.ceil(b * 7);
ct.setText(Integer.toString(totalCt));
}
//sending back to start of app
addAgain = (Button) findViewById(R.id.add_again);
addAgain.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(Amounts.this,
ChooseMaterials.class);
intent.putExtra("AddMore", ADD_MORE);
startActivity(intent);
}
});
@Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
if (TextUtils.isEmpty(editBl.getText().toString())) {
numberOfBl = 0;
} else {
numberOfBl = Integer.parseInt(editBl.getText().toString();
}
if (TextUtils.isEmpty(editSd.getText().toString())) {
amountSd = 0;
} else {
amountSd = Float.parseFloat(editSd.getText().toString());
}
SharedPreferences prefs = getSharedPreferences(
"SavedTotals", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = prefs.edit();
editor.putInt("savedBl", numberOfBl);
editor.putFloat("savedSd", amountSd);
editor.commit();
}
@Override
protected void onResume() {
super.onResume();
SharedPreferences preferences = getSharedPreferences("SavedTotals",
Context.MODE_PRIVATE);
int blSaved = preferences.getInt("savedBl", 0);
float sdSaved = preferences.getFloat("savedSd", 0);
int numberBl = blSaved + numberOfBl;
editBl.setText(Integer.toString(numberBl));
float amountSds = sdSaved + amountSd;
editSd.setText(Float.toString(amountSds));
}
Я все еще застряли на этом может кто-то пожалуйста дайте мне немного больше помощи, внутривенно прилагается изображение, чтобы показать, что я пытаюсь добиться.
Пользователь запускает меню, которое ведет к активности ab или c, где они вводят некоторые числа и заканчиваются в конечном действии, когда отображаются некоторые итоги, когда пользователь нажимает кнопку на последнем действии, я хочу сохранить итоговые значения и отправить пользователя обратно в меню, где он может начать снова, когда пользователь вернется к последнему действию. Будет новый набор итогов. Я хочу добавить сохраненный итог в новый набор итогов и отобразить их.
Iv попробовал в состоянии сохраненного экземпляра и в состоянии экземпляра восстановления сейчас и в той же проблеме, с которой я столкнулся, когда я поворачиваю телефон, он снова добавляет сохраненные итоговые значения
Я прочитал свой вопрос несколько раз, и я до сих пор не понимаю, что * * вы пытаетесь достичь. Забудьте код и жизненный цикл, каков ваш ожидаемый результат? – Simon
Hi Simon iv добавил картинку, чтобы попытаться объяснить ее немного лучше. – Robert