Что возвращает EditText.getText () в Android, если он пуст? - PullRequest
16 голосов
/ 07 мая 2010

Я пробовал пустую и пустую строку, есть еще идеи?

Ответы [ 5 ]

61 голосов
/ 07 мая 2010

Нет другой возможности.

getText, на самом деле, никогда не вернет ноль. Возвращает CharSequence, содержимое которого может быть пустым.

Вместо того, чтобы делать getText().toString().equals("") или наоборот, это может быть быстрее, чем getText().length() == 0

5 голосов
/ 07 мая 2010

Вы можете использовать TextUtils.isEmpty (mEditText.getText (). ToString ()).Он вернет true, если его пусто / пусто.

5 голосов
/ 07 мая 2010

Если он пуст, это будет работать:

if(mEditText.getText().toString().equals("")) {
    // stuff to run when it's empty
}

Даже если он пуст, getText () все равно вернет Editable, поэтому, если вы пытались это сделать:

if(mEditText.getText().equals("")) {
    // stuff
}

Это наверняка не работало.

0 голосов
/ 22 апреля 2019

После просмотра нескольких вопросов и с уже можно получить ноль Я нашел ответ, чтобы избежать

вызов метода toString может привести к NPE

предупреждение повсюду:

String theText = String.valueOf(mEditText.getText());

0 голосов
/ 26 ноября 2018

Лучший способ проверить это - это хранить значение в переменной типа:

String text = mEditText.getText().toString();

и затем использовать логический оператор isEmpty, например:

if (text.isEmpty){
    // stuff
} 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...