我知道如何在一個特定的方向鎖定的活動(在AndroidManifest.xml中):安卓:如何堅持相同的方向活動開始
android:screenOrientation="landscape|portrait"
我知道如何鎖定到具體方向編程︰
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT)
但是,如何鎖定活動的方向,其中開始?例如,如果它開始肖像,它應該堅持這一點。
謝謝!
我知道如何在一個特定的方向鎖定的活動(在AndroidManifest.xml中):安卓:如何堅持相同的方向活動開始
android:screenOrientation="landscape|portrait"
我知道如何鎖定到具體方向編程︰
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT)
但是,如何鎖定活動的方向,其中開始?例如,如果它開始肖像,它應該堅持這一點。
謝謝!
活動:
switch (((WindowManager) getSystemService(WINDOW_SERVICE)).getDefaultDisplay().getRotation()) {
case Surface.ROTATION_90:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
break;
case Surface.ROTATION_180:
setRequestedOrientation(9/* reversePortait */);
break;
case Surface.ROTATION_270:
setRequestedOrientation(8/* reverseLandscape */);
break;
default :
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
發現here 。
當您的應用程序啓動時使用getResources().getConfiguration().orientation
,然後以編程方式像上面那樣設置方向。該方法將返回ORIENTATION_LANDSCAPE
或ORIENTATION_PORTRAIT
您的意思是,如果用戶以縱向模式持有手機,應用程序應該以縱向模式啓動?我認爲它已經在默認情況下... – Barney 2013-03-07 22:10:33
我面臨同樣的問題。請給我解決方案。 – Hemant 2014-03-01 13:09:28