我想创建一个Android应用程序(用于平板电脑),该应用程序应仅以横向显示,例如应用程序应忽略旋转90°,但支持旋转180°。
在清单中添加android:screenOrientation =“landscape”会导致应用忽略所有旋转(即使是180°旋转),即将设备旋转180°会显示应用程序颠倒。
如果没有android:screenOrientation属性,我的应用程序将在所有四个位置“正确”显示。将设备旋转180°会垂直翻转UI。水平。
当旋转设备时,会创建以下日志消息(这可能有帮助吗?):
[...]: INFO/WindowManager(1290): Setting rotation to 1, animFlags=0
Rotation is a value between 0 and 3 representing the current orientation.
总结:是否可以启用应用程序以支持横向方向?
答案 0 :(得分:17)
新的sensorLandscape屏幕方向显然是出于此目的。
例如,你可以这样做:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE);
不幸的是,这仅适用于Android 2.3。我正在寻找一种在Froyo上实现这一目标的方法。