2016-09-29 8 views
0

У меня это странное поведение в EditText.getText() возвращает пустую строку в Edittext android

Я создал класс, который расширяет EditText, тогда я создал метод в этом новом классе под названием validate и в этом методе. Я пытаюсь проверить текст, который пользователь вводит в EditText с некоторыми условиями.

Проблема в том, что getText() возвращает пустую строку все время. Вот мой код:

public class AttributeNumber extends EditText { 
    public boolean validate() { 
     Log.i("AMIRA", "Text Out" + getText().toString()); 
    } 
} 

Может ли кто-нибудь сказать мне, что случилось?

+0

Вы передаете номер редактору? или его строковое значение? –

+0

@PramodPatel Я передаю ему номер, я установил его тип ввода в число, не имеет значения –

+0

Ваш метод 'validate()' должен быть помещен внутри некоторого прослушивателя, который вызывается при изменении текста, 'validate() 'не будет называть себя –

ответ

1

Попробуйте это:

public class AttributeNumber extends EditText { 
    public boolean validate() { 
     Log.i("AMIRA", "Text Out" + AttributeNumber.this.getText().toString()); 
    } 
} 
0

Я думаю, проблема в том, что ваш метод Validate(). Имеет отсутствующий оператор возврата.

public class AttributeNumber extends EditText { 
    public boolean validate() { 
     Log.i("AMIRA", "Text Out" + getText().toString()); 
     return true; 
    } 
}