安卓强制横屏布局

44
我快完成我的第一个Android游戏了,遇到了一个问题,这个问题很简单,我肯定会感到愚蠢,因为不知道如何解决它。如何强制应用程序保持横向布局?现在,如果你翻转手机(模拟器),它会翻转图形并把它们压缩。我希望游戏可以水平开始,并且无论用户如何翻转手机都保持这种方式。
谢谢。
5个回答

106

打开 AndroidManifest.xml 并添加以下的 android:screenOrientation="landscape",例如:

 <activity android:name=".ActivtyName" 
       android:screenOrientation="landscape"
                >

15

如果你想在Activity级别上实现此功能,以便动态更改或允许用户选择方向,请在Activity的onCreate方法中使用setRequestedOrientation。

this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
非常抱歉,我只能使用英文进行回答。

2
在视图/布局中,setRequestedOrientation() 对我不可见。你能告诉我如何获取它吗? - Raj
1
这对我实际起作用了,而android:screenOrientation="landscape"则没有。 - Hein du Plessis

6
在AndroidManifest文件中,尝试将android:screenOrientation="landscape"添加到活动的属性中。
例如:
<activity android:name=".myMainActivity"
          android:screenOrientation="landscape">

或者,您可以使用一个 R.styleable 文件并在其中设置方向设置。更多信息

1

我认为你应该能够设置

android:screenOrientation="landscape"

在清单文件中设置您的 Activity。看起来没有应用程序范围的设置,因此您可能需要为每个 Activity 单独进行设置。


1
这里有一种更简单的方法,可能会帮助到遇到相同问题且不想处理XML的人。您可以转到“应用程序节点”,选择您的活动并选择屏幕方向。请参见附图以获得更清晰的说明。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接