我的RelativeLayout包含几个不同高度的ImageView / TextView控件,例如20,70,35。控件连续排列。我希望它们将它们的高度扩展到最大控制高度的相同值,例如70.问题是,在我的布局中,RelativeLayout容器和所有控件都扩展到了屏幕高度。
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
<ImageView
android:src="@drawable/image1"
android:background="#FFCCDDEE"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_centerVertical="true"
android:layout_alignParentLeft="true"
/>
<ImageView
android:src="@drawable/image2"
android:background="#FFCCDDEE"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_centerVertical="true"
android:layout_centerInParent="true"
/>
<ImageView
android:src="@drawable/image3"
android:background="#FFCCDDEE"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
/>
</RelativeLayout>
我可以将RelativeLayout高度设置为70,但考虑到我不知道前面的子控件大小。
我也可以使用LinearLayout实现所需的效果,但想使用RelativeLayout。
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
<ImageView
android:src="@drawable/image1"
android:background="#FFCCDDEE"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical"
/>
<ImageView
android:src="@drawable/image2"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical"
/>
<ImageView
android:src="@drawable/image3"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical"
/>
</LinearLayout>
有什么想法吗?
答案 0 :(得分:0)
您是否考虑过使用填充/边距?
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
<ImageView
android:src="@drawable/image1"
android:background="#FFCCDDEE"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_centerVertical="true"
android:layout_alignParentLeft="true"
android:padding="70dip"
/>
....
XML应生成140 x 140的图像(我认为)。它不会是动态的,但是XML不能做那样的动态事情。
如果你想做一些更动态的事情,你可以编写能够提取所有元素大小的代码,找到最大的代码,然后将所有对象设置为该大小。
此link可能对此有用。
祝你好运!