Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何以编程方式锁定android设备上的旋转(不是设备范围,只是我的应用程序)?_Android_Rotation_Orientation - Fatal编程技术网

如何以编程方式锁定android设备上的旋转(不是设备范围,只是我的应用程序)?

如何以编程方式锁定android设备上的旋转(不是设备范围,只是我的应用程序)?,android,rotation,orientation,Android,Rotation,Orientation,我知道如何更改manifest.xml中的方向: <activity android:name="com.mygdx.game.android.AndroidLauncher" android:label="@string/app_name" >> android:screenOrientation="landscape" << here android:configChanges="key

我知道如何更改manifest.xml中的方向:

    <activity
        android:name="com.mygdx.game.android.AndroidLauncher"
        android:label="@string/app_name" 
  >>    android:screenOrientation="landscape"   <<   here
        android:configChanges="keyboard|keyboardHidden|orientation|screenSize">
好的,但是如果我想将android:screenOrientation=“landscape”和android:screenOrientation=“locked”结合起来呢?我找到的唯一答案要么是第一个,要么是第二个,但不是如何做到这两个。 我希望我的应用程序始终以横向方式启动,并且从不旋转或翻转。 如果我使用“景观”,它仍然可以翻转过来,所以它要么是90度,要么是270度。 如果我使用“锁定”,它将不会旋转,但在纵向模式下将保持0度


甚至有可能将这两种行为结合起来吗?就像我进入设置并禁用设备上的自动旋转一样。只要我的应用程序还在运行,这就是我想要的。

我一直认为
SCREEN\u ORIENTATION\u scape
将方向锁定为一种配置,
SCREEN\u ORIENTATION\u SENSOR\u scape
允许180度旋转。@danBuonocore我不知道我对android开发是完全陌生的。根据文档,我想这就是它应该做的,但它对我不起作用。当我在screen_ORIENTATION_横向模式下倾斜屏幕时,它仍然会翻转过来。编辑:刚刚又测试了一次。当我启动应用程序时,将设备侧向放置,它会工作,但如果我启动应用程序时,将设备直立放置,如果我倾斜它,它会继续翻转。因此,当你纵向放置它时,它会移动到横向位置,并允许你翻转到其他横向位置,但如果你在横向位置放置它,则一切都会工作?没错。如果我在横向模式下手持设备启动应用程序,它会工作;如果我在纵向模式下手持设备启动应用程序,它会像应该的那样切换到横向模式,但可以翻转过来。
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);