我在Android 2.3.3上開發了一個應用程序。當我點擊應用程序中的按鈕時,我通過Intent打開下一個Activity,並使用onCreate方法中的數據填充Linear Layout。然後我去下一個活動。當我點擊返回按鈕時,之前的活動將加載所有數據。 我的應用程序在Android 2.3.5上正常工作,但是當我在Android 4.0上測試它時,以前的活動缺少數據。Android ICS後退按鈕
我也實現了後退按鈕動作。我在Activity上調用this.finish()。
我在Android 2.3.3上開發了一個應用程序。當我點擊應用程序中的按鈕時,我通過Intent打開下一個Activity,並使用onCreate方法中的數據填充Linear Layout。然後我去下一個活動。當我點擊返回按鈕時,之前的活動將加載所有數據。 我的應用程序在Android 2.3.5上正常工作,但是當我在Android 4.0上測試它時,以前的活動缺少數據。Android ICS後退按鈕
我也實現了後退按鈕動作。我在Activity上調用this.finish()。
我會建議您考慮保存應用程序的實例狀態。這可以通過使用onSaveInstanceState和onRestoreInstanceState的組合來完成。這樣所有的數據都被活動保留。
@Override
protected void onSaveInstanceState(Bundle savedInstanceState) {
super.onSaveInstanceState(savedInstanceState);
savedInstanceState.putInt("data", a);
}
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
a= savedInstanceState.getInt ("data");
}
我的數據是一些類的ArrayList,我從SQLiteDatabase中讀取。我正在考慮實施onStart()方法並在每次活動開始時從數據庫讀取數據。這樣,如果用戶返回該活動或首次創建活動,則用戶將始終擁有新的可用數據。這是正確的方法嗎? – Loadeed
如果每次用戶訪問活動時都想要新的數據,我會推薦使用onResume()。只有在創建/重新啓動Activity時才調用onStart,每次在屏幕上顯示Activity時都會調用onResume。查看活動生命週期以獲取更多信息:http://developer.android.com/reference/android/app/Activity.html – jimmithy
你能顯示你的代碼嗎? –