自定义EditText为有边框的样式:
第一步:定义两个shape文件:如下代码:
未获得焦点时,命名为edittext_normal:
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="https://schemas.android.com/apk/res/android">
<solid android:color="#FFFFFF" />
<corners android:radius="3dp"/>
<stroke
android:width="0.5dp"
android:color="#BDC7D8" />
</shape>
获得焦点时,命名为edittext_focused:
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="https://schemas.android.com/apk/res/android">
<solid android:color="#FFFFFF" />
<corners android:radius="3dp"/>
<stroke
android:width="0.5dp"
android:color="#728ea3" />
</shape>
第二步:定义selector选择器,命名为edittextstyle如下代码:
<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="https://schemas.android.com/apk/res/android">
<item android:state_window_focused="false" android:drawable="@drawable/edittext_normal" />
<item android:state_focused="true" android:drawable="@drawable/edittext_focused" />
</selector>
第三步:把edittextstyle文件作为editText的背景即可实现全框,且获取到焦点和未获取到焦点有两种颜色状态,如下代码
<EditText
android:id="@+id/editText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/edittextstyle"
/>自定义EditText为有边框的样式:
第一步:定义两个shape文件:如下代码:
未获得焦点