如何将一个布局组件的高度设置为另一个组件的高度?

我怎样才能设置一个布局组件高度相同的另一个组件:例如:我可以设置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> 

实现这一目标的唯一方法就是将两个视图放在同一个容器中。 LinearLayout或者RelativeLayout通常适合这个。 你也可以通过代码实现这一点。

你可以使用android:layout_weight 。

将您的两个视图(边框和信息框)与fill_parent和相同的值layout_weight在同一个LinearLayout与orientation = verticale。

使用这种技术,border和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>