我正在製作一個android應用程序,我希望活動能夠在其他活動上按下後退按鈕時重新加載自己。我有一系列的活動。所以我得到了主要的,還有很多其他的。假設主要是activity-1,其他的是activity-2,3,4,5,6,7。一旦用戶按下了一個按鈕,使他進入活動-2或3或4,他將再次出現一些按鈕,其中一個按鈕將使他活動-3或4或5.因此,當用戶處於從主活動啓動的一個活動中,並按下後退按鈕,主要活動應該重新加載,這怎麼可能?請提前幫助和感謝!在android中重新加載活動
回答
覆蓋您的Activity的onBackPressed()
方法(activity-2,3,4 ...)並編寫調用其中的Main活動的代碼。
例如:
@Override
public void onBackPressed() {
Intent mainIntent = new Intent(context, YourMainActivity.class);
context.startActivity(mainIntent);
return;
}
當您從您的任何活動按後退按鈕這將刷新你的主要活動。
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(null);
}
也許你應該試試這個在主要活動
啓動應用程序時,給出了一個異常改變,logcat的說它不能暫停活動。 – user1446632
嘗試:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
Intent intent = new Intent(this,name of the class where you want to go to);
startActivity(intent);
return true;
}
return super.onKeyDown(keyCode, event);
}
這個代碼捕獲上後退按鈕點擊事件,帶你到你想要的活動。
我知道,我以前使用過很多次的onKeyDown,而且我對它很熟悉。但是,如果我用意圖使用該代碼,我會一遍又一遍地啓動實體,不會讓我? – user1446632
這是一個活動是如何重新加載,你也可以[開始從上次狀態的活動(http://stackoverflow.com/questions/4873263/android-save-activity-state-when-starting-new-activity) –
@ user1446632您需要重新加載主要活動,那麼上述方法有什麼問題? –
使用finish();
這將返回到案例activity-1中的上一個活動而不重新加載。
只是頂部,但是這就是問題所在,我要重新加載的主要活動 – user1446632
那麼它很簡單覆蓋的後退按鈕與使用「意圖」你如何從一個活動移動到另一個同一開頭。 – VenomVendor
開始Activity時,調用完成當前的Activity,例如。
Intent intent = new Intent(getActivity(), AudioRecordingActivity.class);
startActivity(intent);
getActivity().finish();
然後onbackPressed調用新的Activity對於eg :.
@Override
public void onBackPressed() {
Intent intent = new Intent(getApplicationContext(), IndexPageActivity.class);
startActivity(intent);
super.onBackPressed();
}
- 1. 重新加載Android活動數據
- 2. Android重新加載活動組中的活動意向數據
- 3. Android GCM消息活動 - 在活動開始時重新加載
- 4. 如何在同一活動中重新加載菜單android?
- 5. 在Android中的方向更改時活動重新加載
- 6. 在android中重新加載數據密集型活動
- 7. PhoneGap中的重新加載活動
- 8. 活動記錄對象重新加載和重新加載!?
- 9. 定期刷新/重新加載活動
- 10. 如何在打開時重新啓動/重新加載活動?
- 11. 在簡歷上重新加載SharedPreferences? (或如何刷新/重新加載活動)
- 12. 刷新和重新加載活動從服務而不退出活動,Android appwidget
- 13. 如何防止Android中的重新加載活動?
- 14. 如何防止在Android的重新加載活動
- 15. 如何重新加載活動從Android在以前的狀態?
- 16. 在android中重新啓動活動
- 17. 在c#中重新啓動Android活動
- 18. Android:使用新整數值重新加載活動
- 19. 如何重新啓動,重新加載或刷新活動?
- 20. 如何從android中的選項卡活動重新加載活動?
- 21. 完成,重新加載活動
- 22. 使用AdMob重新加載活動
- 23. 重新加載開始活動?
- 24. 活動重新加載每次
- 25. 重新加載youtubeplayer的活動?
- 26. Android不會加載新活動
- 27. Asynctaskloader重新啓動時重新加載活動
- 28. 重新啓動活動Android
- 29. Android活動重新啓動
- 30. 在Android中刷新/重新加載CustomView
在調用'startActivity(...)'之後,立即除了'Activity-1'調用'finish()'之外,都有'Activities'。 – Squonk
這聽起來像個壞主意......你爲什麼需要實現這種行爲?這違背了Android的公約和那種破壞了用戶體驗,在我看來... –
我需要重新加載的主要活動,以重新從SharedPreferences的數據,因爲他們在其他活動 – user1446632