我有一个自定义组件,它有一个ImageView
和一个文本。我的问题是,如果我在布局中设置文本centerHorizontal=true
,文本中心就可以了,但如果文本太长则会在图像视图上重叠。如果我设置layout_toRightOf="@+id/imageviewid"
,则文本不重叠,但文本看起来太靠近图像视图。我希望我的文字居中,但不会重叠ImageView.
我查了this,这是我尝试的解决方案,但它不适合我。
布局:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:layout_width="40dp"
android:layout_height="30dp"
android:id="@+id/imagecolor"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:layout_marginLeft="15dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium"
android:id="@+id/textcolor"
android:layout_centerVertical="true"
android:gravity="center_horizontal"
android:textColor="@color/white"
android:layout_centerHorizontal="true"
android:text="Placeholder"
android:layout_toRightOf="@+id/imagecolor"/>
<Space
android:layout_width="20dp"
android:layout_height="60dp"
android:layout_alignParentTop="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true" />
</RelativeLayout>
答案 0 :(得分:2)
您可以从左侧到文本视图提供边距,它始终与左侧图像视图保持距离。
机器人:layout_marginLeft = “10dp” .... .....