Я разрабатываю функцию регистрации, и мне нужно выполнить некоторую проверку перед регистрацией. Поэтому, когда я проверяю, что все editText null, это просто не работает. Я не мог понять, почему.Почему editext getText ничего не возвращает?
здесь код
public class RegisterActivity extends Activity implements View.OnClickListener {
private AlertDialogManager alert = new AlertDialogManager();
private EditText mFullName;
private EditText mEmail;
private EditText mPassword;
private EditText mPasswordAgain;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.register);
init();
}
private void init() {
findViewById(R.id.registerButton).setOnClickListener(this);
mFullName = (EditText)findViewById(R.id.registerFullName);
mEmail = (EditText)findViewById(R.id.registerEmail);
mPassword = (EditText)findViewById(R.id.registerPassword);
mPasswordAgain = (EditText)findViewById(R.id.registerPasswordRetype);
}
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.registerButton:
System.out.println("fullname="+mFullName.getText());
System.out.println("email="+mEmail.getText());
System.out.println("emailString="+mEmail.getText().toString());
if (mFullName.getText().toString().equals("") && mEmail.getText().toString().equals("") && mPassword.getText().toString().equals("") && mPasswordAgain.getText().toString().equals("")){
if (Utils.isValidEmail(mEmail.getText().toString())){
if (Utils.checkPassWordAndConfirmPassword(mPassword.getText().toString(), mPasswordAgain.getText().toString())){
register();
} else {
alert.showAlertDialog(RegisterActivity.this, "Error",
"Password doesn't match", false);
}
} else {
alert.showAlertDialog(RegisterActivity.this, "Error",
"Wrong email", false);
}
} else {
alert.showAlertDialog(RegisterActivity.this, "Error",
"All fields are required", false);
}
break;
}
}
}
Вы видите там System.out.println при нажатии на кнопку. Я также добавил, что здесь, но
08-01 11:34:46.830: INFO/System.out(10434): fullname=
08-01 11:34:46.830: INFO/System.out(10434): email=
08-01 11:34:46.830: INFO/System.out(10434): emailString=
Улыбка getText не печатает null, если он пуст?
вы должны использовать gettext(). Tostring(). –
Не пробовал, он не работает – bauer9664
Почему вам нужно печатать null? Вы можете сделать так: getText(). ToString.length()> = 1 или if (getText(). ToString()! = "") -> Это, если пустой текст в edittext. Вы первый человек, ожидающий получить нуль! – Charan