2013-12-23 3 views
2

Если пользователь вводит недействительный адрес электронной почты или оставляет его пустым, я хочу показать сообщение Toast и настроить фокус на текстовое поле электронной почты.Как настроить фокус EditText После проверки активности в Android?

+0

Покажите нам некоторые коды –

+0

попробовать .. ** editText.requestFocus(); ** –

+0

проверка [это сообщение] (http://stackoverflow.com/questions/14393442/how-to-validate-multiple -edittext-fields-with-a-pop-up-message-or-alert-dialog-b? rq = 1) –

ответ

0

Чтобы получить фокус и показать клавиатуру можно были бы написать что-то вроде этого:

if(myEditText.requestFocus()) { 
     getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE); 
Toast.makeText(MainActivity.this, "your message to displayed on the screen", Toast.LENGTH_SHORT).show(); 
    } 
3

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

EditText etEmailID = (EditText) layout.findViewById(R.id.etEmailID); 
String emailID= etEmailID.getText().toString(); 
Context mContext = MainActivity.this; // Your_Context 

if(emailID.isEmpty() || !android.util.Patterns.EMAIL_ADDRESS.matcher(emailID.matches()) 
    { 
    Toast.makeText(mContext, "Please enter valid recipient address", Toast.LENGTH_LONG).show(); 
    etEmailID.requestFocus(emailID.length()); 
    } 

Надеется, что это поможет.

+0

выше код будет вызывать ** ОШИБКА ** - скобки помещаются неправильно, когда вы проверяете электронную почту в ' если-statement'. Вместо этого он должен быть: 'if (emailID.isEmpty() ||! Android.util.Patterns.EMAIL_ADDRESS.matcher (emailID) .matches()) {...}' – Joni

+0

попытался отредактировать ответ @ Andrain, но, к сожалению, мой предложение было отклонено. – Joni

0

попробовать это для проверки электронной почты ..

EditText email = (EditText) findViewById(R.id.email); 
    if(email.getText().toString().equals("")){ 
     email.requestFocus(); 
     Toast.makeText(getApplicationContext(), "please enter email", Toast.LENGTH_SHORT).show(); 
    } 
    if(!eMailValidation(email.getText().toString())){ 
     email.requestFocus(); 
     Toast.makeText(getApplicationContext(), "please enter valid email", Toast.LENGTH_SHORT).show(); 
    } 

eMailValidation (String электронной почты).

public static boolean eMailValidation(String email) { 
    emailPattern = Pattern.compile("[a-zA-Z0-9\\+\\.\\_\\%\\-\\+]{1,256}" 
      + "\\@" + "[a-zA-Z0-9][a-zA-Z0-9\\-]{0,64}" + "(" + "\\." 
      + "[a-zA-Z0-9][a-zA-Z0-9\\-]{0,25}" + ")+"); 
    emailMatcher = emailPattern.matcher(email); 
    return emailMatcher.matches(); 
} 
Смежные вопросы