Edittext space 为什么 space 有两个 edittext?

Edittext space why space beetwhen two edittexts?

我的 linearLayout 包含两个 EditText 并将 weight() 设置为两个 EditText。但是在显示到设备时出现了一些问题,当出现 2 个 EditText 时 space 下注。为什么....

          <LinearLayout
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:orientation="horizontal" >

            <EditText
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="0.4"
                android:gravity="center_vertical|left"
                android:text="@string/PNR"
                android:textSize="16sp" />

            <EditText
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="0.6"
                android:gravity="center_vertical|left"
                android:hint="@string/ENTER_YOUR_PNR_CODE"
                android:textSize="16sp" />
        </LinearLayout>

下面是我要设计的图片:

这里是图片输出(2个Edittext之间的space不知道为什么会出现?)

你能试试这个代码吗?

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#cccc"
        android:textSize="16dp"
        android:padding="16dp"
        android:text="Whant an upgrade? Enter booking details" />

    <TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:shrinkColumns="*"
        android:stretchColumns="*"
        android:background="#ffffff">


        <TableRow
            android:layout_height="wrap_content"
            android:layout_width="fill_parent"
            android:gravity="center_horizontal">

            <TextView
                android:id="@+id/TextView04"
                android:text="PNR"
                android:padding="18dip"
                android:gravity="left" />

            <EditText
                android:id="@+id/EditText04"
                android:hint="Enter your pnr code"
                android:padding="18dip"
                android:textColor="#000000"
                android:gravity="left" />
        </TableRow>

        <TableRow
            android:layout_height="wrap_content"
            android:layout_width="fill_parent"
            android:gravity="center_horizontal">

            <TextView
                android:id="@+id/TextView05"
                android:text="Last name"
                android:padding="18dip"
                android:gravity="left" />

            <EditText
                android:id="@+id/EditText05"
                android:hint="enter your last name"
                android:textColor="#000000"
                android:padding="18dip"
                android:gravity="left" />
        </TableRow>
    </TableLayout>

试试这个:

android:weightSum="2"

android:layout_weight="1"

android:layout_weight="1"

Android UI 功能对每个元素占用 8dp space。

将背景设为 "Transparent" - 这将解决您的问题

这段代码在我这边运行良好。

<LinearLayout
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:orientation="horizontal" >

            <EditText
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="0.4"
                android:padding="0dp"
                android:background="@null"
                android:gravity="center_vertical|left"
                android:text="@string/PNR"
                android:textSize="16sp" />

            <EditText
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="0.6"
                android:padding="0dp"
                android:background="@null"
                android:gravity="center_vertical|left"
                android:hint="@string/ENTER_YOUR_PNR_CODE"
                android:textSize="16sp" />
        </LinearLayout>

希望这对您有所帮助..

编辑

EditText 保留默认填充,因此您需要将其显式设置为 0dp。

试试这个

设置透明背景色。两个编辑文本视图都试试这个颜色代码

 android:background="#00000000"


   <EditText
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.4"
            android:gravity="center_vertical|left"
            android:background="#00000000"
            android:text="@string/PNR"
            android:textSize="16sp" />

我想你的问题已经解决了。

将 EdtiText 的背景设置为透明或 null 像这样:

<LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:orientation="horizontal" >

        <EditText
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:background="@null"
            android:layout_weight="0.4"
            android:gravity="center_vertical|left"
            android:text="@string/PNR"
            android:textSize="16sp" />

        <EditText
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:background="@null"
            android:layout_weight="0.6"
            android:gravity="center_vertical|left"
            android:hint="@string/ENTER_YOUR_PNR_CODE"
            android:textSize="16sp" />
</LinearLayout>