如何将布局方向固定为纵向,并在运行时不允许从纵向切换到横向?
AndroidMainfest.xml
文件中找到你想要锁定方向的活动标签,然后添加这个属性:android:screenOrientation="portrait"
按照以下示例使用setRequestedOrientation()
:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
在 Manifest 文件中的活动参数中
<?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"
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
之前
setContentView(R.layout.main);
AndroidManifest.xml
中只需在声明活动的位置编写以下内容,android:screenOrientation="portrait"
如果您想使用横向布局,请使用以下代码:
android:screenOrientation="landscape"
如果您想要在项目中固定一个Activity的方向,您需要打开Manifest.xml
文件,并在所需Activity的参数部分中添加以下内容(在第一个标签< activity…>
结束之前):
android:screenOrientation="portrait"
如果您想要垂直固定方向
android:screenOrientation="landscape"
如果您想要水平固定方向
android:screenOrientation="portrait"
属性后,根据答案我仍然可以旋转屏幕。最终我在下一个步骤找到了解决方案,即在每个活动的onCreate()
中添加这行代码:setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
- Sirop4ik