如何让屏幕在横向模式在Android中
我应该始终显示在风景模式的活动。所以我加了android:screenOrientation="landscape"
。如何让屏幕在横向模式在Android中
但问题是,当我旋转设备180度,显示是倒置的。有没有办法处理这个问题,以便屏幕元素始终显示正确。
所以只是给大家的信息,这是我做的。
- 在Android清单中增加了android:screenOrientation =“landscape”。
- 在简历上添加方法的代码
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