Sperren Sie die Android-Telefonanwendung auf den Porträtmodus


99

Kann mir jemand sagen, wie ich meine Anwendung für einen Hochformatmodus sperren kann? Ist es eine einfache Konfiguration in der Manifestdatei?

Antworten:


222

Ja. Fügen Sie android:screenOrientation="portrait"dem Manifest unter Ihrer Hauptaktivität hinzu.

<activity android:name=".yourActivity" android:screenOrientation="portrait"... />

73

Ja! Es ist ein Attribut des Aktivitäts-Tags:

<activity android:name=".yourActivity" android:screenOrientation="portrait" ... />

7
Muss ich dies zu allen Aktivitäten hinzufügen, um es zu sperren?
Harsha MV

@HarshaMV Sieht so aus, als würde das Hinzufügen zur Hauptaktivität auf die gesamte App angewendet.
Declan McKenna

11

Möglicherweise müssen Sie Ihrem Aktivitätselement außerdem Folgendes hinzufügen:

android:configChanges="keyboardHidden"

Auf diese Weise ändert das Betriebssystem die Ausrichtung nicht, wenn der Benutzer eine Schiebetastatur öffnet.


3

Keine dieser Antworten funktionierte auf meinem System, aber ich fand, dass die folgenden für eine einfache App, die ich entwickelt habe, perfekt funktionierten:

Innerhalb MainActivity.java add:

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

zu onCreate ()

Das ist meins:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}

Ich weiß, dass es nicht (immer) die beste Vorgehensweise ist, die Ausrichtung zu sperren, aber unter besonderen Umständen ist sie gültig und ich möchte dies nur vorübergehend, während ich mich weiterentwickle.


Willkommen bei StackOverflow. Es ist gut, dass Sie eine Lösung für Ihren speziellen Fall freigeben, aber Sie können Ihre Antwort bearbeiten, um den von Ihnen veröffentlichten Code richtig zu formatieren, damit er besser lesbar ist. Dazu müssen der Code und der vorherige Absatz durch mindestens zwei Zeilenumbrüche geteilt werden, und jede Zeile im Codeblock muss mit mindestens 4 Leerzeichen eingerückt sein. Bitte probieren Sie dies aus, indem Sie Ihre Antwort bearbeiten, und Sie werden selbst sehen, wie Ihre Antwort dadurch viel besser aussieht.
SebasSBM

Vollständige nützliche Tipps zur allgemeinen Verbesserung der Antworten finden Sie im Abschnitt Wie poste ich eine gute Antwort? . Aber in Ihrem Fall finden Sie diesen Abschnitt über Abschriften in Posts viel interessanter, denke ich. Jede kleine Verbesserung Ihrer Antwort kann einen großen Unterschied machen.
SebasSBM

Vielen Dank für die Tipps SebasSBM, es sah auf meinem Bildschirm lesbar aus, als ich es schickte, aber etwas ging auf der Reise verloren :)
Ned
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.