我正在使用来自 com.android.support:design:23.3.0 的 TextInputLayout
当我第一次应用错误时,它会正确显示。
mInputPassword.setError(getString(R.string.error_invalid_password));
mInputEmail.setError(getString(R.string.error_field_required));
在下次登录尝试时,我清除了错误。
mInputEmail.setError(null);
mInputPassword.setError(null);
然后我运行验证并使用与上面相同的代码再次设置错误,但这次应用了红线但错误文本丢失了。
有人知道为什么会发生这种情况或遇到过类似情况吗?
我看到类似的报道here但它适用于旧版本的设计库,不知道它是否仍然是我使用的版本中的问题,
最佳答案
您只需执行以下步骤:
setErrorEnabled(true);
setError("error");
清除:
setError(null);
setErrorEnabled(false);
重复第一步设置新错误。 setError(null)
清除错误消息和图标,所以我认为要显示的 View 已经消失,setErrorEnabled(false)
将重置它。
关于android - 清除后 TextInputLayout 不显示错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36912602/