Как установить высоту одного компонента макета на ту же высоту другого компонента? - PullRequest
9 голосов
/ 13 января 2011

Как я могу установить одну высоту компонентов макета такой же, как у другого компонента: пример: можно ли установить android: layout_height = "@ + id / info_box.height" или сделать что-то подобное?

Я хочувысота ImageView, соответствующая моей LinearLayout

ImageView android:id="@+id/border"
  android:src="@drawable/frame"
android:layout_below="@+id/title"
android:layout_width="fill_parent"
android:layout_height="????"    
android:scaleType="fitXY" 
android:drawingCacheQuality="auto"
/>

<LinearLayout
android:id="@+id/info_box"
android:orientation="vertical"
android:layout_below="@+id/title"
android:background="@layout/my_bg"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
... other stuff . .
 </LinearLayout>

Ответы [ 2 ]

4 голосов
/ 14 января 2011

Единственный способ добиться этого - сделать два представления частью одного контейнера.LinearLayout или RelativeLayout обычно хорошо подходят для этого.Вы также можете достичь этого с помощью кода.

1 голос
/ 23 ноября 2012

Вы можете использовать android: layout_weight .

Поместите ваши два представления (border и info_box) с fill_parent и одинаковым значением layout_weight в одном LinearLayout с direction = verticale.

При использовании этой техники границы и info_box будут иметь одинаковую высоту.

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <ImageView
        android:id="@+id/border"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_below="@+id/title"
        android:layout_weight="2"
        android:drawingCacheQuality="auto"
        android:scaleType="fitXY"
        android:src="@drawable/frame" />

    <LinearLayout
        android:id="@+id/info_box"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_below="@+id/title"
        android:layout_weight="2"
        android:background="@layout/my_bg"
        android:orientation="vertical" >

        ... other stuff . .

    </LinearLayout>

</LinearLayout>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...