如何删除edittext字段的边框

时间:2013-12-28 06:43:03

标签: java android android-layout layout android-edittext

我创建了一个登录布局,但在此布局中,edittext字段边框重叠。 我想删除第二个编辑文本字段的top border。请指导我。 链接在这里 screen

我想让布局完全像这样。这是我的XML code

round_edittext.xml:

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

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

    <stroke
        android:width="1dp"
        android:color="#9999" />

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

</shape>

activity_mail.xml:

<?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:gravity="center"
    android:orientation="vertical" >

    <ImageButton
        android:id="@+id/save"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="#00000000"
        android:clickable="false"
        android:src="@drawable/no_smslogo_text" />

    <EditText
        android:id="@+id/editText1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="40sp"
        android:layout_marginRight="40sp"
        android:layout_marginTop="10sp"
        android:background="@drawable/round_edittext"
        android:drawableLeft="@drawable/mobile_icon"
        android:drawablePadding="5dp"
        android:gravity="left"
        android:hint="Mobile Number"
        android:padding="5dp"
        android:paddingBottom="8sp"
        android:paddingTop="8sp"
        android:textSize="15dp" >
    </EditText>

    <EditText
        android:id="@+id/editText2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="40sp"
        android:layout_marginRight="40sp"
        android:background="@drawable/round_edittext"
        android:drawable="@drawable/pin_icon"
        android:drawableLeft="@drawable/mobile_icon"
        android:drawablePadding="5dp"
        android:gravity="left"
        android:hint="Pin Number"
        android:padding="5dp"
        android:paddingBottom="8sp"
        android:paddingTop="8sp"
        android:textSize="15dp" />

    <Button
        android:id="@+id/signin"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="40sp"
        android:layout_marginRight="40sp"
        android:layout_marginTop="10sp"
        android:clickable="true"
        android:gravity="center"
        android:text="Sign In"
        android:textColor="#ffffff"
        android:textSize="15dp" />

</LinearLayout>

6 个答案:

答案 0 :(得分:17)

使用它,这对我有用

<EditText  
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:hint="@string/hello" 
android:background="#00000000"
/>

答案 1 :(得分:3)

您需要为此

使用图层列表
 <?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
    <!-- Border -->
    <item>
        <shape>
            <solid android:color="#f000"></solid>
        </shape>
    </item>
    <!-- Body -->
    <item android:left="2dip"
          android:bottom="2dp"
          android:right="2dp">
        <shape>
            <solid android:color="#ffafafaf"></solid>
        </shape> 
    </item>
</layer-list>

答案 2 :(得分:3)

你有两个解决方案

  1. 您可以在布局背景上设置形状,并在布局中放置两个编辑文本。

  2. 目前,您正在使用一种形状来编辑文本。你可以使用两个 形状;不同的上边框和其他下边框 边界。

  3. <ImageButton
        android:id="@+id/save"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="#00000000"
        android:clickable="false" />
    
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/round_edittext"
        android:gravity="center"
        android:orientation="vertical" >
    
        <EditText
            android:id="@+id/editText1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="40sp"
            android:layout_marginRight="40sp"
            android:layout_marginTop="10sp"
            android:background="#00000000"
            android:drawablePadding="5dp"
            android:gravity="left"
            android:hint="Mobile Number"
            android:padding="5dp"
            android:paddingBottom="8sp"
            android:paddingTop="8sp"
            android:textSize="15dp" >
        </EditText>
    
        <EditText
            android:id="@+id/editText2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="40sp"
            android:layout_marginRight="40sp"
            android:background="#00000000"
            android:drawablePadding="5dp"
            android:gravity="left"
            android:hint="Pin Number"
            android:padding="5dp"
            android:paddingBottom="8sp"
            android:paddingTop="8sp"
            android:textSize="15dp" />
    </LinearLayout>
    
    <Button
        android:id="@+id/signin"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="40sp"
        android:layout_marginRight="40sp"
        android:layout_marginTop="10sp"
        android:clickable="true"
        android:gravity="center"
        android:text="Sign In"
        android:textColor="#ffffff"
        android:textSize="15dp" />
    

答案 3 :(得分:3)

为您的edittext使用两个drawable。

一个有填充顶部:

round_edittext.xml:

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

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

<stroke
    android:width="1dp"
    android:color="#9999" />
<!-- add this padding for top -->
<padding android:top="2dp" />
<corners
    android:bottomLeftRadius="1dp"
    android:bottomRightRadius="1dp"
    android:topLeftRadius="1dp"
    android:topRightRadius="1dp" />

</shape>

和第二个没有填充:

round_edittext.xml:

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

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

<stroke
    android:width="1dp"
    android:color="#9999" />

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

</shape>

答案 4 :(得分:2)

我是通过这样保持背景透明的方式做到这一点的:

<EditText
    android:background="@android:color/transparent"
/>

答案 5 :(得分:1)

您可以使用以下xml布局

自定义编辑文本

将以下代码保存为youryWishName.xml

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

//You can change the color of the edit text here which removes the border line as well
 <item android:state_focused="true" >
    <shape android:shape="rectangle">
        <gradient
            android:startColor="#FFFFFF"
            android:endColor="#FFFFFF"
            android:angle="270" />
        <stroke
            android:width="3dp"
            android:color="#F8B334" />
        <corners
            android:radius="12dp" /> 
    </shape>
</item>  
<item>
    <shape android:shape="rectangle">
        <gradient
            android:startColor="#FFFFFF"
            android:endColor="#FFFFFF"
            android:angle="270" />
        <stroke
            android:width="0dp"
            android:color="#000000" />
        <corners
            android:radius="12dp" /> 
    </shape>
</item>
</selector>

在EditText中调用xml android:background =“@ drawable / yourWishName”

右对齐使用android:gravity =“right”

希望这有帮助