Android 在增加空间方面面临困难

Android 在增加空间方面面临困难,android,space,Android,Space,我想在“TextView”之间添加分隔符。有两个“空间”,最后一个可以正常工作,但第一个在水平方向上占用了很大的空间。我附上一个截图。我不明白是什么导致了这个问题。有人能说出那里发生了什么吗。提前谢谢 <TableLayout android:id="@+id/tl_search" android:layout_width="match_parent" android:layout_height="wrap_content" android:paddingS

我想在“TextView”之间添加分隔符。有两个“空间”,最后一个可以正常工作,但第一个在水平方向上占用了很大的空间。我附上一个截图。我不明白是什么导致了这个问题。有人能说出那里发生了什么吗。提前谢谢

<TableLayout
    android:id="@+id/tl_search"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:paddingStart="10dp"
    android:paddingEnd="10dp">
    <TableRow>
        <EditText
            android:id="@+id/et_search"
            android:layout_column="0"
            android:layout_width="0dp"
            android:layout_weight="1"
            android:layout_height="match_parent"
            android:hint="Type here"/>
        <ImageButton
            android:id="@+id/ib_search"
            android:layout_column="1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/ic_search"
            android:contentDescription="Search image"/>
    </TableRow>
    <TableRow android:orientation="vertical">
        <TextView
            android:id="@+id/btn_previous"
            android:layout_column="0"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="Previous"
            android:padding="5dp"
            android:background="#0d0f21"
            android:gravity="center"
            android:textColor="@android:color/white"
            android:textSize="15sp"/>
        <Space
            android:layout_width="1dp"
            android:layout_height="match_parent"/>
        <TextView
            android:id="@+id/btn_clear"
            android:layout_column="1"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="Clear"
            android:padding="5dp"
            android:background="#0d0f21"
            android:gravity="center"
            android:textColor="@android:color/white"
            android:textSize="15sp"/>
        <Space
            android:layout_width="1dp"
            android:layout_height="match_parent"/>
        <TextView
            android:id="@+id/btn_search"
            android:layout_column="2"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="Search"
            android:padding="5dp"
            android:background="#0d0f21"
            android:gravity="center"
            android:textColor="@android:color/white"
            android:textSize="15sp"/>
    </TableRow>

</TableLayout>


在您的文本视图id
android:id=“@+id/btn\u previous”
中给出android:layout\u column=“1”,您的问题将得到解决

试试这个

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#fff"
    android:orientation="vertical">


    <TableLayout
        android:id="@+id/tl_search"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingEnd="10dp"
        android:paddingStart="10dp">

        <TableRow>

            <EditText
                android:id="@+id/et_search"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_column="0"
                android:layout_weight="1"
                android:hint="Type here" />

            <ImageButton
                android:id="@+id/ib_search"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_column="1"
                android:contentDescription="Search image"
                android:src="@drawable/ic_add_black_24dp" />
        </TableRow>

        <TableRow android:orientation="vertical">

            <TextView
                android:id="@+id/btn_previous"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_column="1"
                android:layout_weight="1"
                android:background="#0d0f21"
                android:gravity="center"
                android:padding="5dp"
                android:text="Previous"
                android:textColor="@android:color/white"
                android:textSize="15sp" />

            <Space
                android:layout_width="1dp"
                android:layout_height="match_parent" />

            <TextView
                android:id="@+id/btn_clear"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_column="1"
                android:layout_weight="1"
                android:background="#0d0f21"
                android:gravity="center"
                android:padding="5dp"
                android:text="Clear"
                android:textColor="@android:color/white"
                android:textSize="15sp" />

            <Space
                android:layout_width="1dp"
                android:layout_height="match_parent" />

            <TextView
                android:id="@+id/btn_search"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_column="2"
                android:layout_weight="1"
                android:background="#0d0f21"
                android:gravity="center"
                android:padding="5dp"
                android:text="Search"
                android:textColor="@android:color/white"
                android:textSize="15sp" />
        </TableRow>

    </TableLayout>


</LinearLayout>

输出


如果不需要
表格布局
,可以使用
线性布局
易懂

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/tl_search"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:paddingStart="10dp"
    android:paddingEnd="10dp">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">
        <EditText
            android:id="@+id/et_search"
            android:layout_width="0dp"
            android:layout_weight="1"
            android:layout_height="match_parent"
            android:hint="Type here"/>
        <ImageButton
            android:id="@+id/ib_search"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/search_black_24dp"
            android:contentDescription="Search image"/>
    </LinearLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">
        <TextView
            android:id="@+id/btn_previous"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="Previous"
            android:padding="5dp"
            android:background="#0d0f21"
            android:gravity="center"
            android:textColor="@android:color/white"
            android:textSize="15sp"/>
        <Space
            android:layout_width="1dp"
            android:layout_height="match_parent"/>
        <TextView
            android:id="@+id/btn_clear"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="Clear"
            android:padding="5dp"
            android:background="#0d0f21"
            android:gravity="center"
            android:textColor="@android:color/white"
            android:textSize="15sp"/>
        <Space
            android:layout_width="1dp"
            android:layout_height="match_parent"/>
        <TextView
            android:id="@+id/btn_search"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="Search"
            android:padding="5dp"
            android:background="#0d0f21"
            android:gravity="center"
            android:textColor="@android:color/white"
            android:textSize="15sp"/>
    </LinearLayout>

</LinearLayout>

的问题

图像按钮宽度和重量

和表行

加权和

试试这个

<TableLayout
        android:id="@+id/tl_search"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingEnd="10dp"
        android:paddingStart="10dp">

        <TableRow
            android:weightSum="5"
            android:orientation="horizontal">

            <EditText
                android:id="@+id/et_search"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_column="0"
                android:layout_weight="4"
                android:hint="Type here" />

            <ImageButton
                android:id="@+id/ib_search"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_column="1"
                android:layout_weight="1"
                android:contentDescription="Search image"
                android:src="@drawable/ic_add_black_24dp" />
        </TableRow>

        <TableRow
            android:orientation="vertical"
            android:weightSum="3">

            <TextView
                android:id="@+id/btn_previous"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_column="0"
                android:layout_weight="1"
                android:background="#0d0f21"
                android:gravity="center"
                android:padding="5dp"
                android:text="Previous"
                android:textColor="@android:color/white"
                android:textSize="15sp" />

            <Space
                android:layout_width="1dp"
                android:layout_height="match_parent" />

            <TextView
                android:id="@+id/btn_clear"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_column="1"
                android:layout_weight="1"
                android:background="#0d0f21"
                android:gravity="center"
                android:padding="5dp"
                android:text="Clear"
                android:textColor="@android:color/white"
                android:textSize="15sp" />

            <Space
                android:layout_width="1dp"
                android:layout_height="match_parent" />

            <TextView
                android:id="@+id/btn_search"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_column="2"
                android:layout_weight="1"
                android:background="#0d0f21"
                android:gravity="center"
                android:padding="5dp"
                android:text="Search"
                android:textColor="@android:color/white"
                android:textSize="15sp" />
        </TableRow>

    </TableLayout>

使用
线性布局
作为每个按钮的父级,使用
布局宽度=“匹配父级”
布局高度=“包裹内容”
并为每个按钮提供
布局宽度=“0dp”
布局重量=“1”
,并对中央按钮使用
布局边距=“2dp”

我是说,像这样做

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center"
    android:orientation="horizontal"
    android:padding="2dp"
>

    <Button
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="Previous"
        android:textAllCaps="false"
    />
    <Button
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_margin="2dp"
        android:layout_weight="1"
        android:text="Clear"
        android:textAllCaps="false"
    />
    <Button
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="Search"
        android:textAllCaps="false"
    />

</LinearLayout >

main\u activity.xml

  <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dp"
        android:orientation="horizontal"
        android:padding="10dp">

        <Button
            android:id="@+id/Previous"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginRight="4dp"
            android:layout_weight="0.5"
            android:background="@drawable/ractangle_drawable_pitch"
            android:gravity="center"
            android:text="Previous"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:textColor="@android:color/white" />

        <Button
            android:id="@+id/Clear"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginLeft="4dp"
            android:layout_marginRight="4dp"
            android:layout_weight="0.5"
            android:background="@drawable/ractangle_drawable_green"
            android:gravity="center"
            android:text="Clear"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:textColor="@android:color/white" />

        <Button
            android:id="@+id/Search"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginLeft="4dp"
            android:layout_weight="0.5"
            android:background="@drawable/ractangle_drawable_blue"
            android:gravity="center"
            android:text="Search"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:textColor="@android:color/white" />
    </LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">

    <solid android:color="#FF686D" />

    <corners
        android:bottomLeftRadius="0dp"
        android:bottomRightRadius="0dp"
        android:topLeftRadius="0dp"
        android:topRightRadius="0dp" />

    <size android:height="10dp" />

</shape>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" >

    <solid android:color="#32BEBB" />

    <corners
        android:bottomLeftRadius="0dp"
        android:bottomRightRadius="0dp"
        android:topLeftRadius="0dp"
        android:topRightRadius="0dp" />

    <size android:height="40dp" />

</shape>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">

<solid android:color="#0000ff" />

<corners
    android:bottomLeftRadius="0dp"
    android:bottomRightRadius="0dp"
    android:topLeftRadius="0dp"
    android:topRightRadius="0dp" />

<size android:height="10dp" />

</shape>

ractangle\u drawable\u pitch.xml

  <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dp"
        android:orientation="horizontal"
        android:padding="10dp">

        <Button
            android:id="@+id/Previous"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginRight="4dp"
            android:layout_weight="0.5"
            android:background="@drawable/ractangle_drawable_pitch"
            android:gravity="center"
            android:text="Previous"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:textColor="@android:color/white" />

        <Button
            android:id="@+id/Clear"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginLeft="4dp"
            android:layout_marginRight="4dp"
            android:layout_weight="0.5"
            android:background="@drawable/ractangle_drawable_green"
            android:gravity="center"
            android:text="Clear"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:textColor="@android:color/white" />

        <Button
            android:id="@+id/Search"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginLeft="4dp"
            android:layout_weight="0.5"
            android:background="@drawable/ractangle_drawable_blue"
            android:gravity="center"
            android:text="Search"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:textColor="@android:color/white" />
    </LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">

    <solid android:color="#FF686D" />

    <corners
        android:bottomLeftRadius="0dp"
        android:bottomRightRadius="0dp"
        android:topLeftRadius="0dp"
        android:topRightRadius="0dp" />

    <size android:height="10dp" />

</shape>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" >

    <solid android:color="#32BEBB" />

    <corners
        android:bottomLeftRadius="0dp"
        android:bottomRightRadius="0dp"
        android:topLeftRadius="0dp"
        android:topRightRadius="0dp" />

    <size android:height="40dp" />

</shape>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">

<solid android:color="#0000ff" />

<corners
    android:bottomLeftRadius="0dp"
    android:bottomRightRadius="0dp"
    android:topLeftRadius="0dp"
    android:topRightRadius="0dp" />

<size android:height="10dp" />

</shape>

ractangle\u drawable\u green.xml

  <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dp"
        android:orientation="horizontal"
        android:padding="10dp">

        <Button
            android:id="@+id/Previous"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginRight="4dp"
            android:layout_weight="0.5"
            android:background="@drawable/ractangle_drawable_pitch"
            android:gravity="center"
            android:text="Previous"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:textColor="@android:color/white" />

        <Button
            android:id="@+id/Clear"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginLeft="4dp"
            android:layout_marginRight="4dp"
            android:layout_weight="0.5"
            android:background="@drawable/ractangle_drawable_green"
            android:gravity="center"
            android:text="Clear"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:textColor="@android:color/white" />

        <Button
            android:id="@+id/Search"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginLeft="4dp"
            android:layout_weight="0.5"
            android:background="@drawable/ractangle_drawable_blue"
            android:gravity="center"
            android:text="Search"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:textColor="@android:color/white" />
    </LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">

    <solid android:color="#FF686D" />

    <corners
        android:bottomLeftRadius="0dp"
        android:bottomRightRadius="0dp"
        android:topLeftRadius="0dp"
        android:topRightRadius="0dp" />

    <size android:height="10dp" />

</shape>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" >

    <solid android:color="#32BEBB" />

    <corners
        android:bottomLeftRadius="0dp"
        android:bottomRightRadius="0dp"
        android:topLeftRadius="0dp"
        android:topRightRadius="0dp" />

    <size android:height="40dp" />

</shape>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">

<solid android:color="#0000ff" />

<corners
    android:bottomLeftRadius="0dp"
    android:bottomRightRadius="0dp"
    android:topLeftRadius="0dp"
    android:topRightRadius="0dp" />

<size android:height="10dp" />

</shape>

ractangle\u drawable\u blue.xml

  <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dp"
        android:orientation="horizontal"
        android:padding="10dp">

        <Button
            android:id="@+id/Previous"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginRight="4dp"
            android:layout_weight="0.5"
            android:background="@drawable/ractangle_drawable_pitch"
            android:gravity="center"
            android:text="Previous"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:textColor="@android:color/white" />

        <Button
            android:id="@+id/Clear"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginLeft="4dp"
            android:layout_marginRight="4dp"
            android:layout_weight="0.5"
            android:background="@drawable/ractangle_drawable_green"
            android:gravity="center"
            android:text="Clear"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:textColor="@android:color/white" />

        <Button
            android:id="@+id/Search"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginLeft="4dp"
            android:layout_weight="0.5"
            android:background="@drawable/ractangle_drawable_blue"
            android:gravity="center"
            android:text="Search"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:textColor="@android:color/white" />
    </LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">

    <solid android:color="#FF686D" />

    <corners
        android:bottomLeftRadius="0dp"
        android:bottomRightRadius="0dp"
        android:topLeftRadius="0dp"
        android:topRightRadius="0dp" />

    <size android:height="10dp" />

</shape>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" >

    <solid android:color="#32BEBB" />

    <corners
        android:bottomLeftRadius="0dp"
        android:bottomRightRadius="0dp"
        android:topLeftRadius="0dp"
        android:topRightRadius="0dp" />

    <size android:height="40dp" />

</shape>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">

<solid android:color="#0000ff" />

<corners
    android:bottomLeftRadius="0dp"
    android:bottomRightRadius="0dp"
    android:topLeftRadius="0dp"
    android:topRightRadius="0dp" />

<size android:height="10dp" />

</shape>


希望这对您有所帮助。

问题在于表格布局。最好将主布局更改为Linear@Neo是否需要表格布局在您的文本视图id中给出android:layout_column=“1”,您的问题将得到解决,谢谢@Prem。但是您能告诉我原因吗。因为它是行的第一列,所以编号应该从零开始,对吗?请你澄清一下好吗?谢谢@Benijith,你说得对。但是,如果我想让ImageButton的宽度为wrap_content,您能告诉我有什么问题吗?谢谢@Parambir的时间。你提供了一个非常简单而好的解决方案。我真的很想对你的答案投赞成票,但由于我的声誉低于15,我无法做到这一点。我非常抱歉@Parambir,再次感谢您的支持…感谢@Abhishek为您提供的时间,这也是一个非常好的解决方案感谢@InsaneCat为您提供的支持,这也是一个很好的解决方案solution@Neo欢迎希望这能对你有所帮助。如果是的话,那么把这个答案标记为正确,然后投票表决,这样对其他人会有帮助。很高兴帮助你。因为我的问题是表格布局,所以我接受Prem的答案。我也想接受本吉特·宾贾的回答。但是因为我只能接受一个答案,所以我不能同时接受两个答案。我真的很想对你的答案投赞成票,但由于我的声誉低于15,我无法做到这一点。非常抱歉@Inasecat,再次感谢您的支持。。。