Witam
Jestem początkujący i zdaje sobie sprawy, że poniższy kod mógłby być lepiej napisany i błąd, który tu występuje jest pewnie błahy ;) Proszę o wyrozumiałość
Otóż na początku miałem jedynie metodę, która sprawdzała czy pole formularza rejestracji nie są puste. Kiedy dodałem metodę sprawdzającą poprawność wprowadzonego maila, ta pierwsza metoda się nie wywołuje.
public class ActivityRejestracja extends AppCompatActivity {
private EditText emailEditText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_rejestracja);
emailEditText = (EditText) findViewById(R.id.email);
findViewById(R.id.BtnZarejestruj).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
final String email = emailEditText.getText().toString();
if (!isValidEmail(email)) {
emailEditText.setError("Podaj adres e-mail");
}
}
});
}
private boolean isValidEmail(String email) {
String EMAIL_PATTERN = "^[_A-Za-z0-9-\\+]+(\\.[_A-Za-z0-9-]+)*@"
+ "[A-Za-z0-9-]+(\\.[A-Za-z0-9]+)*(\\.[A-Za-z]{2,})$";
Pattern pattern = Pattern.compile(EMAIL_PATTERN);
Matcher matcher = pattern.matcher(email);
return matcher.matches();
}
public void rejestracja(View view) {
EditText login, password, password1,email;
login = (EditText) findViewById(R.id.UsernameRej);
password = (EditText) findViewById(R.id.PasswordRej);
password1 = (EditText) findViewById(R.id.PasswordRej1);
email = (EditText) findViewById(R.id.email);
if ((login.getText().toString().trim().equals(""))) {
login.setError("Podaj login!");
//Toast.makeText(getApplicationContext(), "Podaj login!", Toast.LENGTH_SHORT).show();
}
else if ((email.getText().toString().trim().equals(""))) {
email.setError("Podaj adres e-mail!");
//Toast.makeText(getApplicationContext(), "Podaj adres e-mail!", Toast.LENGTH_SHORT).show();
} else if ((password.getText().toString().trim().equals(""))) {
password.setError("Podaj hasło!");
//Toast.makeText(getApplicationContext(), "Podaj hasło!", Toast.LENGTH_SHORT).show();
} else if ((password1.getText().toString().trim().equals(""))) {
password1.setError("Powtórz hasło!");
//Toast.makeText(getApplicationContext(), "Powtórz hasło!", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(this, "Zarejestrowano pomyślnie!", Toast.LENGTH_SHORT).show();
Intent intent = new Intent(this, MainActivity.class);
startActivity(intent);
}
}
}