Enfocar el siguiente texto automáticamente

Tengo un TextView con android:maxLength establecido en 3 y otro con android:maxLength establecido en 7 .

Quiero que el enfoque se mueva automáticamente a la segunda TextView una vez que los 3 caracteres de la primera TextView se llenan. ¿Cómo lograr esto sin heredar TextView y escribir una implementación personalizada?

No lo he intentado pero esto podría funcionar.

Configurar un oyente para disparar cuando se cambió el texto, para este uso

 addTextChangedListener(TextWatcher watcher) 

A continuación, basándose en la longitud del texto, puede solicitar el cambio de enfoque al siguiente campo.

Si desea averiguar el siguiente campo puede llamar a View.focusSearch(View.FOCUS_FORWARD) Buscar la vista más cercana en la dirección especificada que puede tomar el foco. Esto en realidad no da enfoque a esa vista.

Para futuros lectores que esperan COPY/PASTE

 int MAX_LENGTH = 3; txt1.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override public void onTextChanged(CharSequence s, int start, int before, int count) { if (s.length() == MAX_LENGTH) { txt2.requestFocus(View.FOCUS_DOWN); } } @Override public void afterTextChanged(Editable s) { } }); 
  • Obtener texto seleccionado de TextView
  • ¿Cómo hacer que el texto se mueva de izquierda a derecha en Android?
  • Tamaño de texto de escala automática
  • Multilínea TextView
  • Fundido de fondo de un android de vista de texto
  • Cómo aumentar el espacio entre párrafos en una vista de texto
  • Obtener el texto visible actual en la vista de texto
  • Calcular el tamaño del texto según el ancho del área de texto
  • Html.fromHtml () está obsoleto, ¿cuál es la alternativa?
  • El fondo de TextView se está estirando
  • Cómo establecer dinámicamente altura de texto altura android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.