2015-01-20 56 views
0

我遇到問題。我有一個應用程序,它具有在manifest.xml中設置的修復方向(人像)。對話框的更改方向

android:screenOrientation="portrait" 

但我想改變一個Dialog的方向,我在我的一個片段創建程序。問題是,super方法onConfigurationChanged(Configuration newConfig)從來沒有被調用,因爲我的清單聲明。

是否有可能檢測到手機已轉動並改變了對話框的方向(沒有像通常那樣破壞/重新創建所有內容)?

編輯:

ActivityFragments應該留在肖像模式,Dialog應檢測的變化和東方」

希望這個問題是可以理解的;)

謝謝!

+0

只應在對話框東方?創建對話框的片段不應該定向嗎? – 2015-01-21 06:50:15

+0

完全一樣。活動和片段保持縱向,對話框檢測到變化並定向 – Wicked161089 2015-01-21 06:55:33

+0

您是否曾經找到過解決方案?這實際上正是我現在需要的 – 2016-12-06 05:37:26

回答

0

我認爲一個可行的解決方案是刪除android:screenOrientation標記,然後重寫onConfigurationChanged()方法來執行您所需的操作。

+0

它會做的工作,但我很好奇,如果有另一種解決方案,只是定位對話 – Wicked161089 2015-01-21 06:59:12

-2

試試這個:

Dialog mDialog = new Dialog(MainActivity.this); 
mDialog.requestWindowFeature(Window.FEATURE_NO_TITLE); 
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); 
mDialog.setContentView(R.layout.alert); 
mDialog.show(); 
+0

這是正常的方式..我不想定位整個活動 – Wicked161089 2015-01-21 07:07:47