我有一个textView(titleTv
)和一个imageView(buyButton
),如果titleTv
有一个很长的名字,它们有时会重叠。
如何防止这种情况?我知道这可以使用外部库来完成 - 但似乎很奇怪没有一种简单的方法可以实现这一点。
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingBottom="7dip"
android:paddingTop="7dip" >
<TextView
android:id="@+id/titleTv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@color/white"
android:paddingLeft="5dp"
android:text=""
android:textSize="20sp" />
<TextView
android:id="@+id/uploaderTv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/titleTv"
android:paddingLeft="5dip"
android:paddingTop="5dp"
android:textColor="@color/verylightgrey"
android:textSize="16sp" />
<TextView
android:id="@+id/viewCountTv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/titleTv"
android:layout_toRightOf="@id/uploaderTv"
android:paddingTop="5dp"
android:textColor="@android:color/black"
android:textSize="16sp" />
<ImageView
android:id="@+id/buyButton"
android:layout_width="45dp"
android:layout_height="45dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:adjustViewBounds="true"
android:paddingTop="7dip"
android:src="@drawable/buy_a_up_btn" />
</RelativeLayout>
(重叠的字段是视频的标题和$按钮)
答案 0 :(得分:0)
试试这个:
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingBottom="7dip"
android:paddingTop="7dip" >
<ImageView
android:id="@+id/buyButton"
android:layout_width="45dp"
android:layout_height="45dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:adjustViewBounds="true"
android:paddingTop="7dip"
android:src="@drawable/buy_a_up_btn" />
<TextView
android:id="@+id/titleTv"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_toLeftOf="@id/buyButton"
android:background="@color/white"
android:paddingLeft="5dp"
android:text=""
android:textSize="20sp" />
<TextView
android:id="@+id/uploaderTv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/titleTv"
android:paddingLeft="5dip"
android:paddingTop="5dp"
android:textColor="@color/verylightgrey"
android:textSize="16sp" />
<TextView
android:id="@+id/viewCountTv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/titleTv"
android:layout_toRightOf="@id/uploaderTv"
android:paddingTop="5dp"
android:textColor="@android:color/black"
android:textSize="16sp" />
</RelativeLayout>
答案 1 :(得分:0)
只需在ImageView
下方添加TextView
即可。在ImageView声明中添加此属性
android:layout_below="@+id/titleTv"
现在xml应该是这样的:
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingBottom="7dip"
android:paddingTop="7dip" >
<TextView
android:id="@+id/titleTv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@color/white"
android:paddingLeft="5dp"
android:text=""
android:textSize="20sp" />
<TextView
android:id="@+id/uploaderTv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/titleTv"
android:paddingLeft="5dip"
android:paddingTop="5dp"
android:textColor="@color/verylightgrey"
android:textSize="16sp" />
<TextView
android:id="@+id/viewCountTv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/titleTv"
android:layout_toRightOf="@id/uploaderTv"
android:paddingTop="5dp"
android:textColor="@android:color/black"
android:textSize="16sp" />
<ImageView
android:id="@+id/buyButton"
android:layout_width="45dp"
android:layout_height="45dp"
android:layout_below="@+id/titleTv"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:adjustViewBounds="true"
android:paddingTop="7dip"
android:src="@drawable/buy_a_up_btn" />
</RelativeLayout>