2011-01-19 2 views
5

Я прикрепил изображение, чтобы лучше проиллюстрировать то, что я собираюсь.Android Layout: элемент позиции ниже нижнего вида

У меня есть два LinearLayout s, расположенные бок о бок. Оба могут расширяться вертикально, используя wrap_content. Я бы хотел разместить другой контейнер (HorizontalScrollView) ниже того, что имеет большую высоту. В настоящее время он установлен ниже самого правого столбца, как правило, он выше, но в некоторых случаях ScrollView будет закрывать контент в крайнем левом столбце. Есть ли способ установить это в файле .xml или мне нужно прибегнуть к настройке этого в моем методе onCreate?

Example screen

ответ

3

Вы можете обернуть вместе два LinearLayouts в другом линейном или относительном макете, что-то подобное (только изменить свойство исходных 3 макетов, как у вас есть/нужны их):

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout 
android:id="@+id/parent" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
xmlns:android="http://schemas.android.com/apk/res/android" 
> 
<RelativeLayout 
android:id="@+id/frame" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:layout_alignParentTop="true" 
> 
<LinearLayout 
android:id="@+id/linearLeft" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:orientation="vertical" 
android:layout_alignParentTop="true" 
android:layout_alignParentLeft="true" 
android:layout_toLeftOf="@+id/linearRight" 
> 
</LinearLayout> 
<LinearLayout 
android:id="@+id/linearRight" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:orientation="vertical" 
android:layout_alignParentTop="true" 
android:layout_alignParentRight="true" 
> 
</LinearLayout> 
</RelativeLayout> 
<ScrollView 
android:id="@+id/scroll" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:layout_below="@+id/frame" 
android:layout_alignParentLeft="true" 
> 
</ScrollView> 
</RelativeLayout> 
+0

Я закончил с использованием этого но оба они сработали бы. – Taka

1

Я хотел бы поместить другой контейнер (HorizontalScrollView) ниже зависимости от того, кто-то имеет большую высоту.

Вы должны установить его программно в методе onConfigurationChanged. Чтобы он мог нормально работать после изменения ориентации устройства.

Смежные вопросы