Android EditText AutoFocus al próximo EditText cuando está en maxlength

Tengo un nombre de usuario y una contraseña de segmento XML

<EditText android:id="@+id/username" android:hint="@string/username_hint" android:layout_width="match_parent" android:maxLength="9" android:nextFocusDown="@+id/pswd" android:layout_height="wrap_content"> </EditText> <EditText android:inputType="textPassword" android:hint="@string/password_hint" android:id="@+id/pswd" android:layout_width="match_parent" android:layout_height="wrap_content"> </EditText> 

Quiero cuando el campo del username alcance el 9no carácter para que el foco del cursor salte automáticamente al campo de la contraseña

Yo estaba mirando Focus next textview automáticamente y estaba tratando de:

  final EditText usr = (EditText) findViewById (R.id.username); final EditText pswd = (EditText) findViewById (R.id.pswd); usr.addTextChangedListener(new TextWatcher() { public void onTextChanged(CharSequence s, int start, int before, int count) { if (s.length() == 9) { pswd.requestFocus(); } } @Override public void afterTextChanged(Editable arg0) { } @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } }); 

Para no tener mucho éxito. Estoy utilizando esto en mi método de oncreate en el que estoy procesando mi información de inicio de sesión. Cualquier idea o sugerencia será apreciada.

Intente como esto puede ayudarle.

/ ** addTextChangedListener es útil cuando la primera casilla de nombre de usuario se llena con llega al 9º carácter * la solicitud se enfocará automáticamente a la siguiente casilla * /

  usr.addTextChangedListener(new TextWatcher() { public void onTextChanged(CharSequence s, int start, int before, int count) { if (count == 9) { pwd.requestFocus(); usr.setTransformationMethod(PasswordTransformationMethod.getInstance()); } } @Override public void afterTextChanged(Editable arg0) { } @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } }); 

Imprima su "s" con log.d() o algo, para que pueda ver cómo se ve "s" .
Tal vez no es lo que esperas.
En este caso, puede code it dirty .
Haga su propio TextWatcher que implemente TextWatcher y dé en el constructor el "usr" .
Para que pueda obtener la longitud total con usr.getText()

Hola tengo probar ahora mismo, pero i éxito, nuestro código es igual, mi xml es simple sólo dos editText mi teléfono es Meizu versión es 4.1

Intenta hacer esto en el método afterTextChanged. También puede llamar a usr.clearFocus () antes de solicitar el foco en pwd.

  • Desplazamiento del foco de RecyclerView
  • Comportamiento extraño con selectAllOnFocus cuando EditText está en ListView
  • Navegación permanenteVerifique el enfoque suelto después de seleccionar un elemento
  • foco perdido después de notifyDataSetChanged ()
  • Calcula cuánto tráfico de red generan otras aplicaciones de Android
  • Android onfocuschange en xml
  • Deshabilitar temporalmente EditText
  • Android: Force EditText para eliminar el enfoque?
  • RequestFocus no funciona correctamente para EditText
  • EditText pierde foco cuando aparece el teclado; Requiere tocar dos veces para editar
  • Cómo configurar un Android SeekBar para ser inmóvil / congelado?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.