聚焦edittext时更改边框颜色 [英] Change border color when edittext is focused

查看:27
本文介绍了聚焦edittext时更改边框颜色的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想知道如何在edittext获得焦点时更改它的边框颜色,目前它看起来像这样:

I am wondering how I can change the border color of the edittext when it is focused, at the moment it looks like this:

我已经尝试在 SDK 中检查源图片,但我无法理解它,我也尝试使用 xml,但无法仅更改边框颜色.

I have tried checking in the SDK for the source picture, but I couldn't make any sense of it, and I have also tried with xml, but was unable to change only the border color.

如果我找到可以在 Photoshop 中编辑以更改颜色的源图片,有什么提示可以做到这一点,或者源图片的位置?:)

If I find the source picture I could edit in photoshop to change the color, any tips on how I could do this, or where the source picture is located? :)

推荐答案

您可以为您的 EditText 创建自定义形状

You can create a custom shape for your EditText

1:STATE_ENABLED是检查ET是否启用/禁用.

1: STATE_ENABLED is to check if the ET is enabled/disabled.

2:STATE_PRESSED 用于检查ET何时被按下(它会改变印刷机上的颜色,但不会保持这种状态.)

2: STATE_PRESSED is to check when the ET is pressed (it will change the color on the press but won't keep it that way.)

3:只要ET被聚焦,STATE_FOCUSED就会保持ET边框颜色变化(满足要求).

3: STATE_FOCUSED keeps the ET border color changed as long as the ET is focused(This fulfills the requirement).

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_enabled="true"
            android:state_focused="true">
        <shape android:padding="10dp" android:shape="rectangle">
            <solid android:color="#FFFFFF" />
            <stroke android:width="2dp" android:color="#ffa0a496" />
            <corners android:bottomLeftRadius="15dp" android:bottomRightRadius="15dp" android:topLeftRadius="15dp" android:topRightRadius="15dp" />
        </shape>
    </item>
    <item android:state_enabled="true">
        <shape android:padding="10dp"
            android:shape="rectangle">
            <solid android:color="#FFFFFF" />
            <corners android:bottomLeftRadius="15dp" android:bottomRightRadius="15dp" android:topLeftRadius="15dp" android:topRightRadius="15dp" />
        </shape>
    </item>
</selector>

并设置背景:

editText.setBackgroundResource(R.drawable.yourFile);

这篇关于聚焦edittext时更改边框颜色的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆