如何解决在 EditText.addTextChangedListener() 中引用字符串字段值的最佳方式?
在我的 Android 应用程序中,我需要检查 EditText 字段是否不为空。
我的代码正在运行,但我想知道在我的侦听器 EditText.addTextChangedListener() 中引用字符串字段值的最佳方法
这里为了方便,我只是删除了两个@override 函数。
- 使用 EditText.getText().toString()
edtGroupName.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s,int start,int before,int count) {
String edtText = edtGroupName.getText().toString();
btnUpdate.setEnabled( !TextUtils.isEmpty(edtText) );
}
});
- 或使用 CharSequence.toString()
edtGroupName.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s,int count) {
String edtText = s.toString();
btnUpdate.setEnabled( !TextUtils.isEmpty(edtText) );
}
});
解决方法
您必须使用第二种方式而不是第一种方式,并使用 afterTextChange 而不是 onTextChange 。
如果您想检查用户插入或删除的每个字符,请使用这种方式,但如果您想检查edittext是否为空或不执行按钮单击等操作,则可以使用
if(!TextUtils.isEmpty(edtGroupName.getText().toString())
{
//button click or what you want
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。