Android:在Number/Phone上设置inputType时,检查EditText是否为空

use*_*111 14 android gettext android-edittext

我在android中有一个EditText供用户输入他们的AGE.它设置为inputType = phone.我想知道是否有办法检查这个EditText是否为空.

我已经看过这个问题:检查EditText是否为空.但它没有解决inputType = phone的情况.

这些,我已经检查过并且不起作用:

(EditText) findViewByID(R.id.age)).getText().toString() == null
(EditText) findViewByID(R.id.age)).getText().toString() == ""
(EditText) findViewByID(R.id.age)).getText().toString().matches("")
(EditText) findViewByID(R.id.age)).getText().toString().equals("")
(EditText) findViewByID(R.id.age)).getText().toString().equals(null)
(EditText) findViewByID(R.id.age)).getText().toString().trim().length() == 0
(EditText) findViewByID(R.id.age)).getText().toString().trim().equals("")
and isEmpty do not check for blank space.
Run Code Online (Sandbox Code Playgroud)

谢谢您的帮助.

Har*_*ran 38

您可以使用TextUtils类进行检查

TextUtils.isEmpty(ed_text);
Run Code Online (Sandbox Code Playgroud)

或者您可以这样检查:

EditText ed = (EditText) findViewById(R.id.age);

String ed_text = ed.getText().toString().trim();

if(ed_text.isEmpty() || ed_text.length() == 0 || ed_text.equals("") || ed_text == null)
{
    //EditText is empty
}
else
{
    //EditText is not empty
}
Run Code Online (Sandbox Code Playgroud)

  • 相反,`TextUtils.isEmpty(ed_text)`会更具可读性. (7认同)
  • 不需要`ed_text == null`.它不能为空. (3认同)

Xar*_*mer 7

第一种方法

使用TextUtil库

if(TextUtils.isEmpty(editText.getText().toString()) 
{
    Toast.makeText(this, "plz enter your name ", Toast.LENGTH_SHORT).show();
    return;
}
Run Code Online (Sandbox Code Playgroud)

第二种方法

private boolean isEmpty(EditText etText) 
{
        return etText.getText().toString().trim().length() == 0;
}
Run Code Online (Sandbox Code Playgroud)