我想知道如何在我的android應用程序中完全關閉方向感應器以進行某些活動。Android方向感應器 - 完全關閉方向感應器
這是我與之奮鬥的。比方說,我使用以下命令動態地在活動的onCreate(或onStart/onResume)方法中設置方向。
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
我的經驗是,屏幕出現在顯示器上明顯更快,如果我會根據方向感應器導致橫向模式的方式握持裝置。
所以感覺就好像活動首先想要按照傳感器建議的方向設置佈局,然後根據setRequestedOrientation方法進行切換。我甚至有時在屏幕上看到這個,如相關的帖子android - unexpected brief orientation change at switch of activity中所述。
看起來像是我用setRequestedOrientation調用太遲了。所以我想知道如何完全關閉方向傳感器,以避免setRequestedOrientation調用之前的方向設置。或者作爲選擇,如何及時調用setRequestedOrientation。由於我在運行時(偏好設置)動態決定需要此功能,因此無法在清單中設置固定的方向。
非常感謝這個問題的任何提示。
馬丁
編輯: 我忘了提,清單中包含
android:configChanges="keyboardHidden|orientation|screenSize"
你試過了'機器人:screenOrientation'清單屬性?請檢查http://stackoverflow.com/a/4675801/1321873也 – Rajesh
thx反饋Hauleth。正如在我的問題的末尾提到的那樣:由於我在運行時(偏好設置)動態決定需要此功能,因此無法在清單中設置方向。 – dorjeduck