聚焦edittext时更改边框颜色

Change border color when edittext is focused(聚焦edittext时更改边框颜色)
本文介绍了聚焦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时更改边框颜色的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

How to target newer versions in .gitlab-ci.yml using auto devops (java 11 instead of 8 and Android 31 instead of 29)(如何在.gitlab-ci.yml中使用自动开发工具(Java 11而不是8,Android 31而不是29)瞄准较新的版本)
Android + coreLibraryDesugaring: which Java 11 APIs can I expect to work?(Android+core LibraryDesugering:我可以期待哪些Java 11API能够工作?)
How to render something in an if statement React Native(如何在If语句中呈现某些内容Reaction Native)
How can I sync two flatList scroll position in react native(如何在本机Reaction中同步两个平面列表滚动位置)
Using Firebase Firestore in offline only mode(在仅脱机模式下使用Firebase FiRestore)
Crash on Google Play Pre-Launch Report: java.lang.NoSuchMethodError(Google Play发布前崩溃报告:java.lang.NoSuchMethodError)