gpt4 book ai didi

android - 删除错误消息时未删除 TextInputLayout 的 errorview

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:56:08 25 4
gpt4 key购买 nike

我有一个带有一些输入字段的垂直线性布局。使用 TextInputLayout 我得到了带有标签和内置错误消息的良好流程。我的问题是当我添加和删除错误消息时。

如果我添加一条错误消息,它位于编辑文本下方,一切看起来都很好。

如果我使用 setError(null) 删除错误消息,消息将被删除但空间仍然存在。这显然是每个谷歌的设计(见 https://code.google.com/p/android/issues/detail?id=176005 )。我非常希望删除这个空间,因为它会使 UI 看起来很不对劲。

如果我执行 .setErrorEnabled(false), View 将被删除,一切看起来又恢复正常了。但是,如果用户更改数据并且我执行另一个 setError,则不会显示错误消息(只有编辑文本行是红色的)。

最佳答案

从支持库版本 23.1.1(可能更早)开始,情况将不再如此。您应该能够调用 TextInputLayout.setErrorEnabled(false) 来隐藏错误 TextView 并且调用 TextInputLayout.setError(error) 现在在内部调用 TextInputLayout.setErrorEnabled(true ) 如果错误不为 null 或为空。请参阅下面的代码 fragment ,摘自支持库:

public void setError(@Nullable CharSequence error) {
if (!mErrorEnabled) {
if (TextUtils.isEmpty(error)) {
// If error isn't enabled, and the error is empty, just return
return;
}
// Else, we'll assume that they want to enable the error functionality
setErrorEnabled(true);
}
...
}

关于android - 删除错误消息时未删除 TextInputLayout 的 errorview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33568952/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com