You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AutocompleteTextView获焦自定义边框颜色,修改颜色需操作XML还是Java?

为AutocompleteTextView设置焦点边框颜色:操作资源XML文件即可

嘿,这个问题很清晰——你只需要操作资源XML文件就能实现,完全不用改动主Java文件(除非你有动态切换颜色的特殊需求,常规情况XML就足够啦)。

你已经在布局XML里给AutocompleteTextView设置了android:background="@drawable/write_text",接下来只需要修改或创建这个write_text.xml drawable文件,通过状态选择器来定义焦点状态下的边框样式就行:

  • 打开res/drawable/write_text.xml(如果没有就新建一个)
  • 编写状态选择器代码,区分「获得焦点」和「默认」状态的边框样式:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- 获得焦点时的样式 -->
    <item android:state_focused="true">
        <shape android:shape="rectangle">
            <!-- 这里替换成你想要的焦点边框颜色 -->
            <stroke android:width="2dp" android:color="#FF4081" />
            <solid android:color="#FFFFFF" /> <!-- 输入框背景色 -->
            <corners android:radius="4dp" /> <!-- 可选:添加圆角 -->
        </shape>
    </item>
    <!-- 默认状态样式 -->
    <item>
        <shape android:shape="rectangle">
            <stroke android:width="1dp" android:color="#CCCCCC" /> <!-- 默认边框色 -->
            <solid android:color="#FFFFFF" />
            <corners android:radius="4dp" />
        </shape>
    </item>
</selector>

这样设置后,当你的start_box获得焦点时,就会自动显示你指定的边框颜色,所有UI样式的控制都在XML里完成,Java代码不需要做任何额外修改~

内容的提问来源于stack exchange,提问作者Mark Caveneau

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 08:26:41