"setErrorEnabled(false)" 之前的 TextInputLayout "setError(null)" 有必要吗?

TextInputLayout "setError(null)" before "setErrorEnabled(false)" necessary?

是否需要在setErrorEnable(false)之前调用setError(null)?为什么?我看不出有什么区别,但我看到很多人都这样做。

没有必要同时调用它们。当您第一次为 TextInputLayout 设置错误时,它的高度会增加一点低于 用于显示该错误的 EditText 字段。

如果你使用 setError(null) 只是错误文本将被删除,但是如果你使用 setErrorEnable(false) 错误文本和额外的 space 将被删除(请注意,如果你设置了一个助手对于 TextInputLayout,错误只是替换为辅助文本,不会添加额外的 space,因此您看不到任何这两种方法的区别)。