我有一个相对的观点,例如:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/linkCardView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@layout/login_gradient_bg"
>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:layout_marginRight="6dp"
android:layout_marginTop="4dp"
android:layout_marginBottom="4dp"
android:background="@drawable/card_bg">
<TextView
android:id="@+id/linkTitle0001"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/faviconView0001"
android:paddingLeft="4dp"
android:lineSpacingExtra="-2dp"
android:fontFamily="sans-serif-condensed"
android:maxLines="2"
android:text="@string/link_title_001"
android:textColor="#717171"
android:textSize="17sp" />
<TextView
android:id="@+id/linkDesc0001"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/faviconView0001"
android:paddingBottom="4dp"
android:fontFamily="sans-serif"
android:maxLines="1"
android:text="@string/link_desc_001"
android:textColor="#acacac"
android:textSize="13sp" />
<ImageView
android:id="@+id/faviconView0001"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingTop="6dp"
android:paddingBottom="7dp"
android:src="@drawable/favicon_example" />
<ImageView
android:id="@+id/labelSource0001"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/linkDesc0001"
android:background="@drawable/card_label" />
</RelativeLayout>
</FrameLayout>
我想增加relativeLayout的大小,使用linkTitle0001 TextView中填充的文本长度。我如何实现这一目标?
答案 0 :(得分:2)
Try this:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/linkCardView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@layout/login_gradient_bg"
>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:layout_marginRight="6dp"
android:layout_marginTop="4dp"
android:layout_marginBottom="4dp"
android:background="@drawable/card_bg">
<ImageView
android:id="@+id/faviconView0001"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingTop="6dp"
android:paddingBottom="7dp"
android:src="@drawable/favicon_example" />
<TextView
android:id="@+id/linkTitle0001"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/faviconView0001"
android:paddingLeft="4dp"
android:lineSpacingExtra="-2dp"
android:fontFamily="sans-serif-condensed"
android:maxLines="2"
android:text="@string/link_title_001"
android:textColor="#717171"
android:textSize="17sp" />
<TextView
android:id="@+id/linkDesc0001"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/faviconView0001"
android:paddingBottom="4dp"
android:fontFamily="sans-serif"
android:maxLines="1"
android:text="@string/link_desc_001"
android:textColor="#acacac"
android:textSize="13sp" />
<ImageView
android:id="@+id/labelSource0001"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/linkDesc0001"
android:background="@drawable/card_label" />
</RelativeLayout>
</FrameLayout>
For Textview linkTitle0001, try to put below something or align baseline with someone as per your need.
答案 1 :(得分:0)
因为您没有规则来阻止它。 source0001低于desc0001,低于favIcon0001。标题是图标的权利,但这并不意味着它下面的东西不能重叠它。基本上,layout_below不会阻止它比该项更进一步。您需要强制所有其他人使用favicon来对齐align_right(因此他们根本不能转到favivon的右侧),或者需要在所有这些项目上加上规则以布局到标题的左侧。 / p>