我的布局有ImageView(iv)和TextView(tv)。 我想让iv的电视权利。 电视的高度与iv相同。 电视重力设置为CENTER_VERTICAL。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/RelativeLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ImageView
android:id="@+id/iv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"/>
<TextView
android:id="@+id/tv"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_toRightOf="@+id/iv"
android:text="TextView" android:gravity="center_vertical"/>
</RelativeLayout>
如何到达目标?
答案 0 :(得分:22)
嗨试试这个......
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/RelativeLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ImageView
android:id="@+id/iv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:src="@drawable/ic_title_home_demo" />
<TextView
android:id="@+id/tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/iv"
android:layout_alignTop="@+id/iv"
android:layout_toRightOf="@+id/iv"
android:gravity="center_vertical"
android:text="TextView" />
</RelativeLayout>
答案 1 :(得分:4)
您必须将textview属性设置为android:layout_alignTop="@id/iv"
和android:layout_alignBottom="@id/iv"
答案 2 :(得分:1)
为了使其垂直居中,您需要从TextView标记中删除android:layout_alignParentTop="true"
行。
然而,听起来您可能正在尝试使文本更改其大小以适合ImageView的整个高度。这显然无法解决这个问题,但我不建议首先这样做,因为它可能会产生一些奇怪的看法。
答案 3 :(得分:1)
您可以使用
来使用不同的尺寸机器人:layout_width = “WRAP_CONTENT”
和/或
机器人:高度= “300dp”
(高度相同)。还要检查边距和填充。
如果你需要更加动态,可以考虑android:layout_weight,即让2个按钮具有相等的宽度,并填充你要设置的父视图的水平空间:
机器人:layout_height = “WRAP_CONTENT”
android_layout:权重= “0.5”
您可以点击此链接:How to make two different layout to have same height?