java - 在不触发提交按钮的情况下验证编辑文本

标签 java android android-edittext

我正在尝试在不触发提交按钮的情况下验证 Edittext 字段。 EditText 应该在用户输入数据时进行验证。我有工作正常的 validator 类,但如何在不触发保存或提交按钮的情况下调用错误消息。我看过 textwatcher 和 onkeylistener。但最好的方法是什么,请帮忙?

mUsername = (EditText) findViewById(R.id.EditTextUsername); 
if(mUsername != null && DataUtil.checkDigits(mUsername)) 
{ 
     mUsername.setError("enter one digit at least"); 
}

最佳答案

其中一种方法是您的 Activity 实现 android.text.TextWatcher 接口(interface),然后您必须向 EditText 框添加 TextChanged 监听器.

例子:

  mUsername.addTextChangedListener(this);

然后像这样覆盖 afterTextChanged(Editable s) 方法:

@Override
public void afterTextChanged(Editable s) {
// And you will place your validation code here
}

这将在任何更改时验证您的编辑文本(而不是在单击或触摸按钮时)。

关于java - 在不触发提交按钮的情况下验证编辑文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20434478/

相关文章:

java - ClipDrawable 在用作小部件的布局背景时不起作用

android - 访问本地主机 :port from Android emulator

android - 在列表适配器android中水平移动Edittext的焦点

android - 编辑在文本上显示红色下划线的文本

android - 每行的 EditText 前缀

java - 使用 "ITestListener"或 "IReporter"监听器生成范围报告

java - 弹出栈顶失败

java - 如何将旋转器中选取的文本放入字符串中并在其他类中使用

Java 编译器忽略类型安全

android - CoordinatorLayout 内的 ViewPager 中的非滚动 fragment