Android EditText addTextChangedListener对EditText Empty的调用方法
这是我的代码,用于检查Android EditText addTextChangedListener对EditText Empty的调用方法,android,android-edittext,Android,Android Edittext,这是我的代码,用于检查EditText是否为空 searchEdit.addTextChangedListener(new TextWatcher() { public void onTextChanged(CharSequence s, int start, int before, int count) { Log.v(TAG, "s-->" + s); Log.v(TAG, "count-->" + count);
EditText
是否为空
searchEdit.addTextChangedListener(new TextWatcher() {
public void onTextChanged(CharSequence s, int start, int before, int count) {
Log.v(TAG, "s-->" + s);
Log.v(TAG, "count-->" + count);
if (count == 0) {
// call method
}
}
当我从EditText
中删除空格时,count返回零,并且调用了我的方法,这是错误的
我也试过这段代码,但当我去掉空格时,len也是零
int len = searchEdit.getText().toString().trim().length();
Log.v(TAG, "len-->" + len);
我输入“us us”,然后按后退键将其删除
日志类别:
s-->u
count-->1
s-->us
count-->2
s-->us
count-->2
s-->us
count-->1
s-->us u
count-->1
length=5
s-->us us
count-->2
s-->us u
count-->1
s-->us
count-->0
s-->us
**count-->0**
**s-->**
**count-->0**
s-->us
count-->2
s-->u
count-->1
s-->
count-->0
当用户清除
EditText
请检查此代码时,建议我调用方法的解决方案,我在我的机器上进行了检查,工作正常:
final EditText editText = new EditText(this);
editText.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
// TODO Auto-generated method stub
String ss = editText.getText().toString();
Log.e("editext", "length ---" + ss.length());
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
}
});
使用s.length()
获取字符号
if (s.length() == 0)
{
// do your job
}
使用此功能,或许可以帮助您:
String sUsername = searchEdit.getText().toString();
if (sUsername.matches(""))
{
// do your job
}
试试这个
editText.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
// TODO Auto-generated method stub
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
if(TextUtils.isEmpty(s)) {
// call method
}
}
});
删除空格时,长度为零。很抱歉,这不起作用。你做了一些错误,因为我做了很多次,我没有发生任何错误,所以请发布更多的代码,以便我们能够理解并查看我的更新答案。。它工作得很好。。请检查您的代码两次您只需使用我的代码…s.length()在我删除空间时返回零。您如何删除空间?通过在设备键盘上按back键。您可以在代码中记录s.length()吗?检查它什么时候等于零,为什么等于零,因为我以前用过这个,输入字符串,空格像“hi hello”,然后在我删除空格时按remove back press。length()为零。当我从EditText中删除空格时,会调用它。