Ich versuche, Benutzern meiner App zu ermöglichen, die Benutzeroberfläche entweder als Standardausrichtung oder als "Lefty Flip" zu aktivieren. Ich bin mir nicht sicher, wie niedrig eine Lösung ist, die ich programmieren muss, wenn man bedenkt, dass Android eine abstrahierte Möglichkeit bietet, dies einfach zu tun.Android: Programmatisches Ändern des XML-Layouts in "Lefty Flip"
Optisch die Standardorientierung wäre:
und die Lefty Flip Orientierung wäre:
Also, zur Zeit, was ich denke zu versuchen, ist eine manuelle Umlagerung der XML-Layout, Komponente nach Komponente, innerhalb der onTouch() - Logik eines Menü-Buttons.
Ich habe das Gefühl, dass es einen einfacheren Weg als das gibt. Irgendwelche Vorschläge? Gibt es eine Reihe programmatischer Aufrufe, um die Ansicht auf die beste Weise neu anzuordnen? Xml-Datei unten.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:baselineAligned="false"
android:keepScreenOn="true">
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1.40"
android:orientation="vertical"
android:id="@+id/toolbarGestureOverlay" >
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:orientation="vertical"
android:layout_weight="3.60"
android:id="@+id/openglsurface">
</LinearLayout>
</LinearLayout>
Wie weit zurück wollen Sie unterstützen? Ab 4.2+ können Sie die layoutDirection des Layouts auf oberster Ebene festlegen. –