在我的應用程序中,我有兩個活動。第一個活動,我有兩個紡紗,當我設置微調值,併爲下一個活動。當我回到我的第一個活動的數據將被刷新。我想在這裏是我想看到由privious設置的價值。如何我能做到這一點。請任何人都可以幫助我。如何在android中保存我Activity的數據?
這裏稱爲像波紋管我活動的生命週期:
1)當我從活動1移到活性2
的onPause()
的onStop()
2)當我回到回到我的第一個活動
onStart()
的onResume()
我已經保存在onSaveInstance狀態的值,但onRestoreInstance狀態不called.here我的代碼是:@覆蓋
protected void onSaveInstanceState(Bundle outState) {
// TODO Auto-generated method stub
super.onSaveInstanceState(outState);
strAutoCompleteValue = autoPatientList.getSelectedItem().toString();
strSpinnerAppointment = selectAppointment.getSelectedItem().toString();
outState.putString("PatientName", strAutoCompleteValue);
outState.putString("AppointmentDate", strSpinnerAppointment);
Toast.makeText(this, "onSaved", 3000).show();
}
和
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onRestoreInstanceState(savedInstanceState);
String pName = savedInstanceState.getString("PatientName");
String appDate = savedInstanceState.getString("AppointmentDate");
Toast.makeText(this, "onRestore", 3000).show();
}
提前感謝。
可能出現重複問題,查看此答案 (http://stackoverflow.com/questions/6705277/save-value-of-spinner-selected-item-using-shared-preference) –
您應該使用在'onSaveInstanceState'中,例如'outState.putInt(String,spinner.getSelectedItemPosition())'。下一步使用Logger記錄消息,而不是Toast,例如:Log.i(「你的標籤名稱」,「你的消息」);'。而在'onRestoreInstanceState'中,你並沒有將存儲的值賦給微調,所以你可以使用'spinner.setSelection(savedInstanceState.getInt(String))'。 – mleczey