我正在使用带有背景的Android Design Library的TextInputLayout和TextInputEditText。设置错误时,该字段会突出显示我的客户不喜欢的红色背景。
如果我不包含字段边框,我可以去掉红色背景,但如果我使用的话,则不能。我已经尝试了所有在相关S / O答案中看到的样式选项但都没有成功。
我还尝试在设置错误后在代码中设置背景,如前面的答案here所述,红色背景 暂时从输入字段中移除,但很快就会重新出现当场重新进入。我尝试添加焦点更改侦听器并重做setBackgroundResource调用,但我仍然得到红色背景。单步执行调试器会显示已发布帧编排器消息,最终会返回背景颜色。由于这种方法总是感觉像是一种解决方法,我没有尝试发布我自己的消息来重新设置它。
答案 0 :(得分:1)
我设法通过这样的透明背景来实现这个目标
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_focused="true"
android:top="5dp">
<shape>
<solid android:color="@android:color/transparent" />
<stroke
android:width="1dp"
android:color="@color/colorWhite" />
<corners android:radius="50dp" />
<padding
android:bottom="13dp"
android:left="13dp"
android:right="13dp"
android:top="13dp" />
</shape>
</item>
</layer-list>