2011-03-11 37 views
2

我認爲這是一個簡單的問題,但我無法在任何地方找到答案!仿真器的內置應用程序無法檢測到方向更改

在我的模擬器(Windows 7上的SDK 9)上,很多內置應用程序無法正確響應方向更改。它們包括:瀏覽器(!),鬧鐘,計算器,Api演示。他們可以正確切換到橫向模式,但是當模擬器轉回到縱向時,它們將保持橫向模式。但是,其他一些內置應用程序也很好,它們是主屏幕,啓動器和電話撥號程序。

我嘗試以下,看看發生了什麼事情:

@Override 
public void onCreate(Bundle savedInstanceState) { 
    .... 
    boolean bLandscape = getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE; 
    .... 
} 

我看到發生了什麼:當仿真器轉向landsacpe模式,它返回正確的結果。但是當模擬器回頭時,它仍然表示它處於橫向模式!

只是我嗎?有人對此有所瞭解嗎?謝謝,一如既往!

+0

一個愚蠢的問題,但多久你切換定向向後之後等待?有時模擬器需要一段時間才能將佈局渲染爲新的方向。至少這發生在我身上。 – Timo 2011-03-11 21:45:24

+0

@Timo好吧,我不會叫你愚蠢的回來,這只是讓我......但有兩件事要回答:如果我看到他們轉向風景,我不會等待足夠長的時間讓他們回頭?此外,我說我已經通過編程檢查過,如果onCreate()被調用,可以輕易推斷出等待時間足夠長。 – wwyt 2011-03-11 22:50:15

回答

2

這是模擬器已知的錯誤。這不會發生在真實的設備上,與任何這些應用程序的編碼方式無關。

的錯誤書面記錄是here

更多的一些信息看here

+0

非常感謝你! – wwyt 2011-03-12 18:32:37