如何将布局方向固定为垂直?


Answers:


152

AndroidMainfest.xml文件中找到您希望锁定到给定轮播的活动的标签,然后添加以下属性:

android:screenOrientation="portrait"

@AlekseyTimoshchenko您能描述一下它不起作用吗?
parvus

3
@parvus对我来说,当我android:screenOrientation="portrait"根据答案在清单中添加此属性时,我仍然可以旋转...最终我在下一步中找到了解决方案,我setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);onCreate();每项活动上都添加了此行
Aleksey Timoshchenko

21

用法setRequestedOrientation()如下所示:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
setContentView(R.layout.main);

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

我个人比较喜欢这样做,如果您想更改方向,这确实很方便,否则,如果您仅打算将设备放置在该方向上,请使用XML。
克里斯·詹金斯(Chris.Jenkins)2012年

16

在清单文件中的活动参数中

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.statepermit" android:versionCode="1" android:versionName="1.0">
    <application android:icon="@drawable/stateheader" android:label="@string/app_name">
        <activity android:name=".statepermit" android:label="@string/app_name"
            android:theme="@android:style/Theme.NoTitleBar" android:screenOrientation="portrait">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

    </application>
    <uses-sdk android:minSdkVersion="7" />

</manifest>

android:screenOrientation =“ portrait”



3
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

之前

setContentView(R.layout.main);

2

如果要在项目中固定一个Activity的方向,则必须打开Manifest.xml并放入所需Activity的参数部分(在关闭第一个标记之前 < activity…> ):

android:screenOrientation="portrait" 如果您想垂直固定方向

android:screenOrientation="landscape" 如果您想水平固定


2

在您AndroidMainfest.xml的活动中只需写下此内容即可声明,

如果要垂直布局而不是使用

android:screenOrientation="portrait"

如果您想在布局景观中使用

android:screenOrientation="landscape"
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.