我需要確定正在運行我的應用程序的手機的實際方向,我找不到任何方法來執行此操作。我找到了「getRequestedOrientation」函數,但它僅檢索由「setRequestedOrientation」函數設置的方向。獲取手機的實際方向
在我的應用程序中,我讓手機根據其物理方向選擇方向。而且我有一些自定義取決於結果。
我該怎麼辦?
在此先感謝您花費時間來幫助我。
我需要確定正在運行我的應用程序的手機的實際方向,我找不到任何方法來執行此操作。我找到了「getRequestedOrientation」函數,但它僅檢索由「setRequestedOrientation」函數設置的方向。獲取手機的實際方向
在我的應用程序中,我讓手機根據其物理方向選擇方向。而且我有一些自定義取決於結果。
我該怎麼辦?
在此先感謝您花費時間來幫助我。
它真的要得到當前的定位。
Display display = ((WindowManager) getSystemService(WINDOW_SERVICE)).getDefaultDisplay();
int width = display.getWidth();
int height = display.getHeight();
int orientation = display.getOrientation();
更簡單但是... getResources()。getConfiguration()。orientation –
這個答案讓我在路上但「getSystemService」返回一個空的句柄。我已經使用「getWindowManager」來代替它並且它可以工作。 – Zelig
根據這兩個問題:
你可以使用:
Activity.getResources().getConfiguration().orientation
據對第二個問題,H評論但是,此值僅返回風景 或肖像。如果您還需要反向定位,我會建議查詢加速度計 值以檢測差異。不過,我並不熟悉Android和加速度計,足以說明如何完全做到這一點。
相似的問題:http://stackoverflow.com/questions/2795833/check-orientation-on-android-phone –