我正在使用Android手机开发自助服务终端系统。方便使用纵向模式作为标准模式,如果我将其旋转到我的需要,它将与传感器一起切换到横向。我的问题是这个设备编程布局会在运行时做很多并排效果,因为它总会切换到纵向,然后记住传感器方向并切换回横向。这意味着纵向模式的实现对我的开发来说不是很舒服。 现在我在开发工具中看到配置应用程序,它向我显示了设备配置:
orientation=1
我的问题是:我必须编辑哪个文件才能将设备方向更改为标准横向,以便上面的应用向我显示横向。 (电话扎根)
我希望将全局从手机纵向模式更改为平板电脑横向模式,而不仅仅是单个应用程序!
答案 0 :(得分:4)
您需要做的是编辑AndroidManifest.xml
文件并指定活动的方向,并自行处理方向更改:
<activity android:name="MyActivity"
android:label="@string/app_name"
...
android:configChanges="orientation|keyboardHidden"
...
android:screenOrientation="landscape">
然后,无论设备方向如何,您的活动都将始终以横向模式运行。
编辑:如果您想以编程方式启用/禁用自动轮播,则可以使用以下代码:
public static void setAutoOrientationEnabled(ContentResolver resolver, boolean enabled)
{
Settings.System.putInt(resolver, Settings.System.ACCELEROMETER_ROTATION, enabled ? 1 : 0);
}
但请注意,这会影响设备上运行的所有应用程序。
答案 1 :(得分:2)
你好,这就是你要找的?这会使应用程序方向成为景观。
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
答案 2 :(得分:1)
这个帖子已经5岁了 - 我正在回答帮助有人到达这里的时间.. 我想这里的每个ans都会讨论应用程序特定的方向变化。以下是您应该考虑更改完整设备的方向
运行时:在/system/build.prop中添加: -
# Makes portrait only
persist.panel.orientation=90
添加构建树:在
中添加相同内容device/<vendor>/<processor>/system.prop
答案 3 :(得分:0)
如果您希望将方向保持为横向,请在Manifest.xml中添加:
<activity android:name="MyActivity" android:screenOrientation="landscape"></activity>