2016-03-28 11 views
1

Ich habe das perfekte Portrait Layout entworfen. Ich möchte das als Teil der Querformat-Version einbinden (siehe Anhang).Wie wird ein Hochformat in ein Landschaftslayout eingefügt?

Layout for Landscape version

Es gibt keine zusätzliche Funktionalität, so dass ich nicht die Notwendigkeit sehen Mühe zu gehen, um Fragmente zu verwenden.

Natürlich kann die Hochformatversion eines Layouts nicht in die Querformatversion aufgenommen werden. Der folgende Code erzeugt die offensichtlichen Fehler von „Layouts selbst nicht enthalten sollten“:

<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="horizontal" 
    > 

    <include 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     layout="@layout/my_perfect_layout" 
     /> 

    <ImageView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center" 
     android:src="@drawable/demo" 
     /> 
</LinearLayout> 

Gibt es eine Möglichkeit, ein Layout-Verzeichnis zu zwingen, so dass ich das nicht Endlosschleife enthalten bekommen? Oder gibt es überhaupt einen anderen Weg? Ich möchte wirklich vermeiden, irgendeinen Java-Code an diesem Punkt zu ändern!

Antwort

1

Best Practice:

  • Legen Sie Ihre Inhalte Layout in eine orientierungs weniger Layout-Datei. (Dies ist der wiederverwendbare Teil)
  • Erstellen Sie eine Rahmenlayoutdatei für alle Orientierungen, die Sie verwenden möchten, und fügen Sie das Inhaltslayout hinzu. (Dies ist der Teil, wo Sie Layout-spezifische Teile, z. B. mehr Zeug in Landschaft einfügen)
+0

Erstellen Sie eine dritte Datei, wie Sie vorgeschlagen tut den Trick. Danke für die Hilfe! –

Verwandte Themen