问题
How to fix layout orientation to portrait and do not allow changing from portrait to landscape during run time?
回答1:
In your AndroidMainfest.xml
file find the tags of the activities you wish to lock to a given rotation, and add this attribute:
android:screenOrientation="portrait"
回答2:
Use setRequestedOrientation()
as shown:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
回答3:
in your activity parameters in Manifest File
<?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"
回答4:
If you want to freeze orientation at runtime, then you you can implement this:
Android: Temporarily disable orientation changes in an Activity
I use a similar approach and it works perfectly.
回答5:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
before
setContentView(R.layout.main);
回答6:
If you want to fix the orientation of one Activity in your project, you have to open the Manifest.xml
and put in the section of parameters of the desired Activity (before the closure of the first tag < activity…>
):
android:screenOrientation="portrait"
if you want VERTICAL fixed orientation
android:screenOrientation="landscape"
if you want HORIZONTAL fixed orientation
回答7:
In your AndroidMainfest.xml
just write this in your activity you declare,
If you want in layout vertical than use
android:screenOrientation="portrait"
If you want in layout landscape than use
android:screenOrientation="landscape"
来源:https://stackoverflow.com/questions/5702086/how-to-fix-layout-orientation-to-vertical