Разделение экрана на две части (горизонтально или вертикально) - PullRequest
1 голос
/ 01 марта 2011

Я пытаюсь построить экран, который разделен на середину по горизонтали в альбомной ориентации и по вертикали в портретной. Я пробовал ниже, но это не работает, как я ожидал. Любая помощь будет принята с благодарностью!

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal" android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <LinearLayout android:layout_width="wrap_content"
        android:layout_height="fill_parent" android:layout_gravity="left"
        android:orientation="horizontal">
        <ListView android:layout_width="fill_parent" android:id="@+id/lvChoices"
            android:layout_gravity="left" android:layout_height="fill_parent" />
    </LinearLayout>
    <LinearLayout android:layout_width="fill_parent"
        android:layout_height="fill_parent" android:orientation="horizontal">
        <ListView android:layout_width="fill_parent" android:id="@+id/lvOptions"
            android:layout_gravity="right" android:layout_height="fill_parent" />
    </LinearLayout>
</LinearLayout>

1 Ответ

6 голосов
/ 01 марта 2011

Чтобы точно разделить середину, лучше использовать android:layout_weight="1" для каждого вашего ребенка в основной линейной раскладке
Для разделения пейзажа и портрета.

  1. вы можете использовать для xml файла один в layout-land, а другой layout-port с android:orientation="horizontal" и android:orientation="vertical" соответственно
  2. Если вы хотите использовать один и тот же xml для обоихустановив свою активность с помощью android:configChanges="orientation", затем идентифицируйте свой LinearLayout по его идентификатору и используйте setOrientation(LinearLayout.HORIZONTAL) в функции onConfigurationChanged
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...