doe*_*doe 6 android android-edittext
我有一个具有以下样式的 Edittext
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="@color/white" android:state_focused="true" />
<item android:color="@color/yellow" android:state_focused="false" />
<item android:color="@color/white" android:state_active="true" />
</selector>
Run Code Online (Sandbox Code Playgroud)
在我应用的 Edittext 样式中
<item name="backgroundTint">@drawable/states_edit_text</item>
Run Code Online (Sandbox Code Playgroud)
它有效。这会更改状态 normal 和focused 中的 EditTexts 底线颜色。当它处于错误状态时,我需要将色调颜色更改为红色。
就像是
<item android:state_error="true" android:color="@color/red"></item>
Run Code Online (Sandbox Code Playgroud)
但是没有称为错误的状态,我参考了其他答案,他们建议通过代码来实现。有什么方法可以使用android样式,我可以在错误状态下将EditText色调设置为红色吗?
我认为你可以通过编程方式更改它:
if (!trueState){
ColorStateList colorStateList = ColorStateList.valueOf(color)
editText.setSupportBackgroundTintList(colorStateList)
}
Run Code Online (Sandbox Code Playgroud)
这将为 EditText 提供所需的下划线颜色。
| 归档时间: |
|
| 查看次数: |
523 次 |
| 最近记录: |