2010-03-23 9 views
52

Wie stelle ich sicher, dass meine App nur für vertikales Layout geeignet ist?Android - Nur vertikales Layout

Ich habe versucht android:screenOrientation="portrait", aber das scheint nicht den Trick zu tun.

+12

Sie sollten eine Antwort akzeptieren. –

Antwort

144

Sie müssen alle Ihre Aktivität nicht nur für eine hinzufügen. Ich denke, Sie haben verstanden, dass die Einstellung pro Anwendung breit ist, aber nicht.

<activity android:name=".MyActivity" 
      android:label="My Activity" 
      android:screenOrientation="portrait"> 

die Erklärung zu dem Aktivitäts-Tag in AndroidManifest Fügen Sie für jede Aktivität wollen Porträt nur sein.

+9

@teepusink Sie sollten diese Antwort akzeptieren. –

2

Fügen Sie der Aktivität android:configChanges="keyboardHidden|orientation" hinzu.

1

Nur um die Antwort von Pentium10 zu bestätigen. Ich hatte ein ähnliches Problem und Hinzufügen von Android: screenOrientation = "Porträt" auf das Tag hat den Trick für mich.

1

android: orientation = "vertikale" setzen Sie dieses Attribut in Layout-Stamm, versuchen Sie es kann helfen.

10

müssen Sie in AndroidManifest.xml ändern.

für jede Aktivität, die Sie einsetzen müssen:

android:configChanges = "orientation" 

android:screenOrientation = "portrait" 

für z.B .:

<activity android:name=".YourActivityName" 
        android:label="@string/app_name" 
        android:configChanges = "orientation" 
        android:screenOrientation = "portrait"> 

Dies ist für eine einzelne Aktivität funktioniert .. Aber es scheint breit keine Anwendung dort einstellen.

17

Wenn Sie einige Gruppe Ihrer Aktivitäten nur auf PORTRAIT Modus gesperrt werden, als der nächste Weg wählen:

public abstract class BasePortraitActivity extends Activity { 

    @Override 
    protected final void onCreate(Bundle state) { 
     super.onCreate(state); 
     setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); 
     performOnCreate(state); 
    } 

    protected abstract void performOnCreate(Bundle state); 

} 

Und als nur BasePortraitActivity erstrecken, wo Sie es brauchen. Oder fügen Sie einfach setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); zu YourActivity.onCreate() hinzu.

4

In Ihrem Manifest unter Tätigkeit fügen Sie diese:

<activity 
     android:name="com.zeus.MyProject" 
     android:screenOrientation="portrait" 
     > 
2

Aktivität will, ist nur für den Fall zu blockieren alle blockieren und wiederholt nur diese Codezeile in ihrer activitys.

oder öffnen Sie Ihre "AndroidManisfest.xml" und fügen Sie die Zeilen für den Hochformat-Modus hinzu, wie unten gezeigt.

 android:configChanges="orientation" 
     android:screenOrientation="portrait"> 
Verwandte Themen