EditText更改样式

时间:2014-04-03 08:52:28

标签: android android-edittext

在我的应用程序的登录页面上,我有两个编辑文本,一个用于密码,另一个用于用户名。我想改变从默认的外观到下面链接的方式。

  

enter image description here

xml文件中的代码

    <EditText
            android:id="@+id/Username"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="60dp"
            android:ems="10"
            android:inputType="text" 
            android:hint="Username"
            android:ellipsize="start"
            android:gravity="center_horizontal"
            android:layout_gravity=""
            android:textColor="#333745"
            android:textSize="15sp"/>
   <EditText
        android:id="@+id/Password"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/Username"
        android:layout_below="@+id/Username"
        android:layout_marginTop="20dp"
        android:ems="10"
        android:inputType="textPassword" 
        android:hint="Password"
        android:ellipsize="start"
        android:gravity="center_horizontal"
        android:background="@drawable/rounded_edittext"
        android:textColor="#333745"
        android:textSize="15sp"/>

3 个答案:

答案 0 :(得分:2)

只需在res/drawable文件夹中创建xml文件,然后粘贴以下代码即可。 尝试在EditText中应用以下形状。

 <?xml version="1.0" encoding="utf-8"?>
<!--  res/drawable/rounded_edittext.xml -->
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" android:padding="10dp">
 <solid android:color="#EBEBEB"/>
    <corners
     android:bottomRightRadius="5dp"
     android:bottomLeftRadius="5dp"
  android:topLeftRadius="5dp"
  android:topRightRadius="5dp"/>
  <padding android:left="10dp"
    android:top="10dp"
    android:right="10dp"
    android:bottom="10dp"/>
</shape>

将其应用于EditText下面的背景图片:

 <EditText
        android:id="@+id/Password"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/Username"
        android:layout_below="@+id/Username"
        android:layout_marginTop="20dp"
        android:ems="10"
        android:inputType="textPassword" 
        android:hint="Password"
        android:ellipsize="start"
        android:gravity="center_horizontal"
        android:background="@drawable/rounded_edittext"
        android:textColor="#333745"
        android:textSize="15sp"/>

您可以根据需要应用颜色。

<强>输出:

enter image description here

答案 1 :(得分:2)

在android项目的/ drawable文件夹中创建round.xml文件,并添加以下代码

<?xml version=”1.0″ encoding=”utf-8″?>
<shape xmlns:android=”http://schemas.android.com/apk/res/android&#8221; >
<corners android:radius=”5dp” />
<stroke
android:width=”1dp”
android:color=”#44433A” />
<solid android:color=”#FFF” />
</shape>

添加此xml作为EditText Widget的背景

<EditText
android:layout_width=”fill_parent”
android:layout_height=”wrap_content”
android:background=”@drawable/round”
android:hint=”Round Corners”
android:padding=”8dp” />

并且您可以使用HERE

以外的样式

答案 2 :(得分:0)

<?xml version="1.0" encoding="utf-8"?>
<!--  res/drawable/rounded_edittext.xml -->
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" android:padding="10dp">
 <solid android:color="#FFFFFF"/>
    <corners
     android:bottomRightRadius="15dp"
     android:bottomLeftRadius="15dp"
  android:topLeftRadius="15dp"
  android:topRightRadius="15dp"/>
</shape>

然后,只需在你的布局中引用这个drawable:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<EditText  
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:padding="5dip"
    android:background="@drawable/rounded_edittext" />
</LinearLayout>