Space 在 android 布局中的 ImageView 和 TextView 之间

Space between ImageView and TextView in android layouts

我对 2 个视图之间的 space 有疑问。填充和边距不起作用。你能提出什么建议吗?需要工作代码。提前致谢。

编辑:我需要一个 space 水平放置在 icon 和 text1 id 之间:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout android:padding="10.0dip" android:descendantFocusability="beforeDescendants" android:layout_width="fill_parent" android:layout_height="fill_parent"
  xmlns:android="http://schemas.android.com/apk/res/android">
    <ImageView android:id="@id/icon" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="12.0dip" android:layout_marginRight="12.0dip" android:src="@drawable/quantum_gm_ic_sd_storage_black_24" android:layout_alignParentLeft="true" android:contentDescription="Choose" android:paddingRight="16.0dip" />
    <TextView android:textSize="16.0sp" android:ellipsize="marquee" android:id="@id/text1" android:paddingLeft="16.0dip" android:paddingRight="16.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Choose" android:layout_toRightOf="@id/icon" android:layout_alignParentLeft="false" android:layout_centerVertical="false" android:textColor="@color/textswitch_color" />
    <TextView android:textSize="13.0sp" android:id="@id/txt_size" android:paddingLeft="40.0dip" android:paddingRight="16.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Choose" android:layout_toLeftOf="@id/txt_date" android:layout_below="@id/text1" android:layout_alignLeft="@id/text1" android:textColor="@color/textswitch_secondary_color" />
    <TextView android:textSize="13.0sp" android:id="@id/txt_date" android:paddingLeft="8.0dip" android:paddingRight="16.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Choose" android:layout_below="@id/text1" android:layout_alignRight="@id/text1" android:textColor="@color/textswitch_secondary_color" />
</RelativeLayout>

Screenshot of layout

首先,我认为您的代码无法正常工作。要为视图设置 id,正确的语法需要 +id.

之前
android:id="@+id/text1"

之后,我认为您的问题是在文本视图上设置 android:layout_width ="fill_parent"。 将其更改为 android:layout_width="wrap_content".

然后可以用android:layout_marginTop="20dp"android:layout_marginEnd="20dp"设置间距

这是一个经过简化但有效的布局示例。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    android:padding="10.0dip"
    android:descendantFocusability="beforeDescendants"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    xmlns:android="http://schemas.android.com/apk/res/android">
    <TextView
        android:textSize="16.0sp"
        android:ellipsize="marquee"
        android:id="@+id/text1"
        android:layout_marginTop="70.0dip"
        android:paddingLeft="8.0dip"
        android:paddingRight="16.0dip"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="Choose"
        android:layout_alignParentLeft="false"
        android:layout_centerVertical="false"
        android:textColor="?attr/colorPrimary" />
    <TextView
        android:textSize="13.0sp"
        android:id="@+id/txt_size"
        android:layout_marginTop="70.0dip"
        android:paddingLeft="8.0dip"
        android:layout_marginEnd="16.0dip"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Choose"
        android:layout_below="@id/text1"
        android:layout_alignEnd="@id/text1"
        android:textColor="?attr/colorPrimary" />
    <TextView
        android:textSize="13.0sp"
        android:id="@+id/txt_date"
        android:paddingLeft="8.0dip"
        android:paddingRight="16.0dip"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Choose"
        android:layout_below="@id/txt_size"
        android:textColor="?attr/colorPrimary" />
</RelativeLayout>