在我正在編寫的應用程序中,有一部分允許您更改窗簾設置。問題在於,該設置在重新創建活動之前不會生效。有沒有辦法告訴應用程序重新啓動使用onResume()方法(希望允許它保存在onSaveInstanceState())的一切?如何在Android中重新啓動活動?
回答
這已經posted before:
Intent intent = getIntent();
finish();
startActivity(intent);
由於API級別11,你也可以叫一個活動的recreate()
方法。這不僅更清潔,因爲它更少代碼,它避免瞭如果您的活動是由隱式意圖啓動可能會出現的問題。
基本上,我想要做的就是能夠調用onCreate( )方法從onRestart()方法。我將如何做,以便onSaveInstanceState()將保存所有內容。因爲有了這個,所有的東西都被重置了,因爲它是一個全新的活動? – Ephraim 2011-04-03 16:19:46
程序工作的方式是,你鍵入一個單詞,並在屏幕上,它會給你一個對應於該單詞的幕簾編號。如果您要更改設置,則與該單詞對應的編號將會更改。問題是,設置不會生效,直到活動重新啓動(如果您要更改方向,它將允許設置生效,但它不會以其他方式執行)我想要的是隻要程序啓動onRestart()方法就能夠做到這一點。 (我想讓EditText中的文本保持不變,就像onSaveInstanceState())。 – Ephraim 2011-04-04 03:12:29
也許你可以像已經演示的那樣重新啓動活動,但傳入一些意圖的附加項以在重新啓動時將字符串發回。
Intent intent = getIntent();
intent.putExtra(STRINGTOSAVE, "Save this string");
finish();
startActivity(intent);
,並在您的onCreate當然你會想檢索字符串
Intent intent = getIntent();
String STRINGTOSAVE = intent.getStringExtra(ActivityName.STRINGTOSAVE);
,然後使用檢索到的字符串重新申請文本字段,你需要任何其他操作。
- 1. 如何重新啓動Android活動?
- 2. 重新啓動活動Android
- 3. Android活動重新啓動
- 4. 在android中重新啓動活動
- 5. 在c#中重新啓動Android活動
- 6. 動畫重新啓動Android的活動
- 7. android如何在視圖中重新啓動我的活動?
- 8. Android重新啓動我的活動
- 9. 活動的重新啓動Android
- 10. 如何重新啓動MAIN活動
- 11. 如何重新啓動活動
- 12. Android活動生命週期---如何重新啓動活動時重置變量?
- 13. 如何在重新啓動後通過服務啓動活動
- 14. 如何在重新啓動後立即啓動鎖屏活動?
- 15. 在活動中重新啓動片段
- 16. Android活動重啓
- 17. 在重新啓動應用程序時重新啓動Android活動
- 18. 如何在重新啓動Android應用程序時定義啓動的活動?
- 19. 如何在打開時重新啓動/重新加載活動?
- 20. 如何在重新進入活動時重新啓動CountDownTimer
- 21. 如何在Android 2.1中啓動活動
- 22. 重新啓動活動嗎?
- 23. 的Android API自動啓動活動,並重新啓動
- 24. 如何重新啓動,重新加載或刷新活動?
- 25. Android:如何重新啓動tabhost內的活動?
- 26. Android - 如何將活動重新啓動與「正常」啓動區分
- 27. 重新啓動活動,而不是重新創建[Android的]
- 28. 如何在TabActivity中重新啓動活動
- 29. 重新啓動活動在微調onItemSelected
- 30. 活動重新啓動但計時器未重新啓動
你不能只是開始另一個實例,然後打電話給原來的完成? – Blundell 2011-04-03 15:22:34
@Blundell - 訣竅是調用'finish()'_before_開始新的實例。 – 2011-04-03 15:31:12
基本上,我想要做的就是能夠從onRestart()方法中調用onCreate()方法。我將如何做,以便onSaveInstanceState()將保存所有內容。因爲有了這個,所有的東西都被重置了,因爲它是一個全新的活動? – Ephraim 2011-04-03 16:21:24