Android edittext 设置边框

前些日子,我在做一个简单的Android项目。由于是新手,所以很多地方都不知道所以然。
遇到了一个问题:当我设置了一个Edittext的时候,它的样式只有下边框一条线,经过不断地百度(因为问题太过简单,大佬们都看不上),我找到了自己的一条道路。

===================================

先设置一个简单的文本框

<EditText
        android:id="@+id/edt_message"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:width="350dp"
        android:height="200dp"
        android:hint="请输入少于文字"
        />

然后在drawable文件夹下建立三个文件。这三个文件分别为:
edittext_style_normal(当焦点不在编辑框时的样式)

<?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="#BDC7D8"/>
</shape>

edittext_style_focused(焦点在文本框)

<?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="#000000"/>
</shape>

选择器:edittext_sytle

<?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/edittext_style_normal"></item>
    <item android:state_window_focused="true" android:drawable="@drawable/edittext_style_focused"></item>
</selector>

然后将选择器加入到edittext样式

<EditText
        android:id="@+id/edt_message"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:width="350dp"
        android:height="200dp"
        android:hint="请输入少于文字"
        android:background="@drawable/edittext_sytle"
        />

这样就大功告成!

猜你喜欢

转载自blog.csdn.net/weixin_44048668/article/details/111992248