Android-макет выше вопроса
Я создаю новое приложение, и в какой-то момент мне нужны две компоновки друг на друга, но я не использую arndroid: ориентация, вместо этого мне нужно использовать layout_above/layout_below, но он говорит мне, что недопустимый параметр для LinearLayout здесь код
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@id/menu"
android:gravity="center">
<LinearLayout
android:id="@+id/t1"
android:layout_width="80dp"
android:gravity="center"
android:layout_height="80dp"
android:background="#DDDDDD">
</LinearLayout>
<LinearLayout
android:id="@+id/t2"
android:layout_width="80dp"
android:gravity="center"
android:layout_height="80dp"
android:background="#DDDDDD">
</LinearLayout>
<LinearLayout
android:id="@+id/t3"
android:layout_width="80dp"
android:gravity="center"
android:layout_above="@id/t1"
android:layout_height="80dp"
android:background="#DDDDDD">
</LinearLayout>
</LinearLayout>
так что линейные макеты t1 и t2 находятся рядом друг с другом, что в порядке, но я хочу линейный макет t3 выше t1
1 ответ
Решение
android:layout_above/layout_below разрешены только для RelativeLayout, используйте RelativeLayout вместо LinearLayout, и это будет работать. Пример:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<LinearLayout
android:id="@+id/below_layout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/rev_arrow">
</LinearLayout>
<LinearLayout>
android:id="@+id/above_layout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</RelativeLayout>
Вот хороший учебник по макетам: http://android.programmerguru.com/android-relativelayout-example/