Android中edittext一些属性设置

首先准备一个EditText,添加 background="@drawable/bg_edittext" 

    <EditText
            android:id="@+id/editText1"
            style="@style/AppTheme"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@drawable/bg_edittext" //这个属性用自以下三个XML
            android:ems="10"
            android:hint="@string/editText"
            android:singleLine="true" >

            <requestFocus />
        </EditText>

然后在项目中找到drawable或者类似文件夹新建New个Android XML File

Next-找到shape

填写名字bg_edittext_normal

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
       <solid android:color="#FFFFFF" /> 
    <corners android:radius="3dip"/>
    <stroke  
        android:width="1dip"  
        android:color="#BDC7D8" /> 

</shape>

同样的方法建立bg_edittext_focused

<?xml version="1.0" encoding="UTF-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android"> 
    <solid android:color="#FFFFFF" /> 
    <corners android:radius="3dip"/>
    <stroke  
        android:width="1dip"  
        android:color="#728ea3" /> 
</shape>

然后再建立个选择器selector,步骤还是上面的步骤,最后选择类型的时候找到selector

<?xml version="1.0" encoding="UTF-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:state_window_focused="false" android:drawable="@drawable/bg_edittext_normal" />
       <item android:state_focused="true" android:drawable="@drawable/bg_edittext_focused" />
</selector>

 OK ,尝试结果:成功..

其它属性设置,设置文本框不可编辑,在文本框中加入android:editable="false"即可

若想在代码控制 ,则editText1.setFocusable(true/false)即可

原文地址:https://www.cnblogs.com/cnwhm/p/3600008.html