我應該始終顯示在風景模式的活動。所以我加了android:screenOrientation="landscape"
。如何讓屏幕在橫向模式在Android中
但問題是,當我旋轉設備180度,顯示是倒置的。有沒有辦法處理這個問題,以便屏幕元素始終顯示正確。
我應該始終顯示在風景模式的活動。所以我加了android:screenOrientation="landscape"
。如何讓屏幕在橫向模式在Android中
但問題是,當我旋轉設備180度,顯示是倒置的。有沒有辦法處理這個問題,以便屏幕元素始終顯示正確。
所以只是給大家的信息,這是我做的。
Display display = ((WindowManager) getSystemService(WINDOW_SERVICE)).getDefaultDisplay(); int orientation = display.getRotation(); if(orientation==Surface.ROTATION_180) { setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_REVERSE_LANDSCAPE); }
這樣,我的屏幕上始終是即使用戶握持設備倒掛正確定位這些行。
它不適用於我,因爲它不會再次調用onResume – Jacky 2013-05-29 10:44:46
嗯。這也取決於你使用的框架版本。試試這一開始:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
如果這樣做效果很好。如果它不是你必須告訴我們更多關於你的應用程序的佈局。
是的。我做到了。這裏是我的onResume方法 Display display =((WindowManager)getSystemService(WINDOW_SERVICE))。getDefaultDisplay(); \t \t int orientation = display.getRotation(); \t \t如果((取向== Surface.ROTATION_90)||(取向== Surface.ROTATION_270)){ \t \t \t setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); \t \t}否則如果(取向== Surface.ROTATION_180){ \t \t \t setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_REVERSE_LANDSCAPE); – prashant 2011-03-24 19:14:31
平心而論應該工作。做得好! – Taranasus 2011-03-24 19:43:21
在Android清單寫:
android:configChanges="orientation"
android:screenOrientation="landscape"
像在下面的例子。
<activity android:name=".MainActivity"
android:label="@string/app_name"
android:configChanges="orientation"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
其實你真正想要的是規定:
android:screenOrientation="sensorLandscape"
在AndroidManifest.xml中。這將監聽傳感器數據,同時在風景和逆向景觀之間捕捉。
+1 Thanx CaseyB,它只需要1分鐘來實現這兩個方向。爲了節省寶貴的時間,再次感謝。 – 2011-11-15 06:51:41
僅供參考,僅適用於平板電腦,我已經測試過相同的設備,但默認情況下它總是以縱向模式顯示應用程序,即它在電話中不工作 – 2011-11-15 08:59:41
sensorLandscape已添加到Froyo(2.2)中,因此它可用於任何具有該功能的設備後來。 – CaseyB 2011-11-15 18:10:31
的好方法是使用
setRequestedOrientation(6);
6是sensorLandscape價值,但沒有爲它定義常量它似乎的。
其他人所說的sensorLandscape
...在你的活動編程做到這一點(或基酶活性),您可以將方向設置爲:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE);
我在onResume()
做。當您在活動中間將設備翻轉180度時,這將尊重風景和逆向景觀,而無需使用。
這對我很有幫助,因爲對於平板電腦,我需要景觀/景觀僅反轉,併爲手機,我需要肖像/肖像僅反轉,不希望做兩個獨立的AndroidManifest文件。 ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT
也存在。
所以,你希望它無論是在橫向或反向的風景? – 2011-03-24 19:16:56
@RobbyPond現在我面臨着一個問題,我希望我的應用程序能夠成爲風景和逆向景觀。所以如果我需要這兩種模式呢? – 2011-11-15 06:48:34