當我在顯示對話框時旋轉設備時,我的活動被重新創建,對話框被取消。每當用戶旋轉設備時,是否需要再次顯示對話框?當活動重新啓動時,對話框被取消
1
A
回答
3
當您旋轉設備時,您的活動將重新啓動。您可以在清單中添加以下內容到應用部分停止此:
android:configChanges="orientation|keyboardHidden"
3
弗拉維奧,
您可以通過添加在你的AndroidManifest.xml以下防止自己的活動從方位的變化正在重建:
<activity android:configChanges="keyboardHidden|orientation" android:name="YourActivity"/>
然後,你需要重寫下面的方法在你的代碼:
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
}
0
Flavio:我無法用方向改變的alertDialogs或自定義對話框重新創建有問題的行爲。你使用onCreateDialog和showDialog(int id)?根據文檔「如果你使用showDialog,對話框會自動保存和恢復,這是我的經驗
它甚至可以創建一個帶有editText小部件的XML佈局,膨脹佈局和狀態EDITTEXT將被自動地保存在方向變化。
AlertDialog.Builder builder= new AlertDialog.Builder(this);
LayoutInflater inflater= getLayoutInflater();
final View myView= inflater.inflate(R.layout.alert_dialog_text_entry, null);
builder.setTitle("About");
builder.setMessage(alertMessage+"Version: "+versionName);
builder.setView(myView);
AlertDialog alert= builder.create();
相關問題
- 1. 當對話框消失時刷新活動
- 2. 等待對話框單擊以重新啓動活動
- 3. 當應用程序/活動啓動時顯示對話框
- 4. 當活動重新啓動時,Android自定義按鈕消失
- 5. 更新其他活動的警報對話框被取消時在主要活動中更新列表視圖
- 6. 從對話框啓動新活動時出現Instanciation錯誤。
- 7. 當用戶點擊消息對話框「ok」按鈕時重新啓動代碼
- 8. 聽不到活動導致對話框在重新啓動時不會出現
- 9. 獲取活動重新啓動時舊活動的數據
- 10. 當它被破壞後重新啓動活動時,onCreate不會被調用
- 11. Android - 當對話框啓用時如何禁用父活動
- 12. android 4.0當對話框窗口被觸摸時,對話框被取消
- 13. 活動重新啓動但計時器未重新啓動
- 14. 當在Tab鍵被點擊時啓動對話框TabHost
- 15. 當對話框啓動時onKeyDown沒有被調用
- 16. 'IllegalStateException:活動已被銷燬'當'getSupportFragmentManager()'在活動重新啓動後調用
- 17. Android:進度對話框在活動暫停時不會被取消
- 18. Android:從對話框啓動新的活動
- 19. 如何在新的活動中啓動搜索對話框?
- 20. Android,如何從對話框中啓動新的活動?
- 21. 當新的活動啓動
- 22. 從另一個活動重新啓動對話
- 23. 當對話框片段被解除時刷新其他活動的片段
- 24. Android重新啓動定時器被取消後
- 25. 當活動重新啓動時,活動的線程能夠存活嗎?
- 26. 重新啓動活動嗎?
- 27. 重新啓動活動Android
- 28. Android活動重新啓動
- 29. 活動重新啓動時,電話查看模式更改
- 30. Android:活動對話框/對話框意外消失
如果我的活動轉到後臺一些(例如,通過點擊回家)並被殺死由操作系統編輯?我想在用戶返回時保持顯示的對話框。 – 2011-03-16 20:12:57
您應該使用應用程序生命週期的各種函數(onPause,onDestroy等)來設置布爾值,並且在調用onReturn等時檢查此布爾值並重新啓動對話框。 – Nanne 2011-03-16 20:13:58
這是我想到的解決方案,但我不太喜歡它。我認爲Android有更好的方式來處理它。 – 2011-03-16 20:17:27