使用Android Material Components TextInputLayout from XML设置未聚焦且不为空时的提示文本颜色
我希望TextInputLayout提示的颜色与聚焦时的颜色相同,即使视图未聚焦,但不为空,而无需在更改时以编程方式手动设置拟合颜色。嘿,您可以在此处设置背景选择器以实现此目的使用Android Material Components TextInputLayout from XML设置未聚焦且不为空时的提示文本颜色,android,material-components-android,Android,Material Components Android,我希望TextInputLayout提示的颜色与聚焦时的颜色相同,即使视图未聚焦,但不为空,而无需在更改时以编程方式手动设置拟合颜色。嘿,您可以在此处设置背景选择器以实现此目的 <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:color="@color/colo
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="@color/colorSlate" android:state_focused="false" />
<item android:color="@color/colorMidnight" android:state_focused="true" />
</selector>
只需将此设置为edittext的背景即可嘿,在那里,您可以设置背景选择器来实现此目的
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="@color/colorSlate" android:state_focused="false" />
<item android:color="@color/colorMidnight" android:state_focused="true" />
</selector>
yourEditText.setOnFocusChangeListener(new OnFocusChangeListener() {
public void onFocusChange(View v, boolean hasFocus) {
if(!hasFocus) {
if(""+yourEditText.getText.length > 0){ // NOT EMPTY
// do your task when its unFocused and not null
}
}
else{
// do your task when its Focused
}
}
});
只需将此设置为edittext的背景,到目前为止,我唯一的解决方案是侦听
edittext
上的焦点更改和文本更改事件,并根据edittext
为空更改TextInputLayout
sdefaultHintTextColor
属性。到目前为止,我唯一的解决方案解决这个问题的方法是监听EditText
上的焦点更改和文本更改事件,并根据EditText
为空更改TextInputLayout
sdefaultHintTextColor
属性。您搜索过什么吗?大多数类似的问题都没有答案或答案不太合适我的情况。你搜索过什么吗?大多数类似的问题要么没有答案,要么答案不太符合我的情况。
yourEditText.setOnFocusChangeListener(new OnFocusChangeListener() {
public void onFocusChange(View v, boolean hasFocus) {
if(!hasFocus) {
if(""+yourEditText.getText.length > 0){ // NOT EMPTY
// do your task when its unFocused and not null
}
}
else{
// do your task when its Focused
}
}
});