Wie kann ich die Layoutausrichtung auf vertikal korrigieren?


73

Wie kann man die Layoutausrichtung auf Hochformat korrigieren und den Wechsel von Hochformat zu Querformat zur Laufzeit nicht zulassen?

Antworten:


151

AndroidMainfest.xmlSuchen Sie in Ihrer Datei die Tags der Aktivitäten, die Sie für eine bestimmte Drehung sperren möchten, und fügen Sie dieses Attribut hinzu:

android:screenOrientation="portrait"

@AlekseyTimoshchenko Kannst du beschreiben, wie es nicht funktioniert?
Parvus

3
@parvus für mich, als ich dieses Attribut android:screenOrientation="portrait"in Manifest gemäß der Antwort, die ich noch drehen kann, hinzufügte ... schließlich fand ich Lösung im nächsten, ich habe diese Zeile setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);zu onCreate();jeder Aktivität hinzugefügt
Aleksey Timoshchenko

21

Verwenden Sie setRequestedOrientation()wie gezeigt:

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

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

Persönlich bevorzuge ich dies. Wenn Sie die Ausrichtung ändern möchten, ist dies sehr praktisch. Andernfalls verwenden Sie XML, wenn Sie das Gerät nur in dieser Ausrichtung platzieren möchten.
Chris.Jenkins

16

in Ihren Aktivitätsparametern 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 = "Porträt"



3
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

Vor

setContentView(R.layout.main);

2

Wenn Sie die Ausrichtung einer Aktivität in Ihrem Projekt festlegen möchten, müssen Sie die Manifest.xmlParameter öffnen und in den Abschnitt mit den Parametern der gewünschten Aktivität einfügen (vor dem Schließen des ersten Tags < activity…> ):

android:screenOrientation="portrait" wenn Sie eine VERTIKALE feste Ausrichtung wünschen

android:screenOrientation="landscape" wenn Sie eine HORIZONTALE feste Ausrichtung wünschen


2

In Ihrem AndroidMainfest.xmlschreibe dies nur in Ihrer Aktivität , die Sie erklären,

Wenn Sie im Layout vertikal als verwenden möchten

android:screenOrientation="portrait"

Wenn Sie in Layout-Landschaft als verwenden möchten

android:screenOrientation="landscape"
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.