gpt4 book ai didi

android - 使用 setError、消失的弹出窗口和图标的 EditText 验证。 (安卓)

转载 作者:行者123 更新时间:2023-11-29 14:03:01 25 4
gpt4 key购买 nike

我有一个由 TextWatcher 监视的 EditText,它使用 Pattern、Matcher 和正则表达式进行验证。它几乎可以正常工作。当用户在 EditText 中输入字符时,TextWatcher 调用 onTextChanged 方法并验证输入的字符。一切正常,在 EditText 的右侧有一个错误图标和一个显示“错误”的弹出窗口。好的。现在,当用户输入第二个字符时,弹出窗口和错误图标消失。第三个字符,它再次出现。第四,它消失了,等等……为什么?出错时如何让icon和popup始终可见?代码:

public EditTextValidator(EditText editText, String patternString, String errorString)
{
this.editText = editText;
this.errorString = errorString;
this.patternString = patternString;

}

@Override
public void afterTextChanged(Editable s)
{

}

@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after)
{

}

@Override
public void onTextChanged(CharSequence s, int start, int before, int count)
{
Pattern pattern = Pattern.compile(patternString);
Matcher matcher = pattern.matcher(s);

if (!matcher.matches())
{
editText.setError(errorString);

} else
{
editText.setError(null);

}
}

private EditText editText;
private String errorString;
private String patternString;

}

我使用 Android 2.1 Sdk (Api 7)

最佳答案

将您的代码放在 on AfterTextChanged() 中。

关于android - 使用 setError、消失的弹出窗口和图标的 EditText 验证。 (安卓),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8573461/

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