Android: ListView con EditTexts desordena el foco y IME
Tengo ListActivity con los artículos de encargo, donde cada artículo tiene su propio TextEdit. Grabar en cualquiera de ellos trae IME teclado hacia arriba y hace que ListView para ser cambiado de tamaño. Por lo tanto, EditText, que recientemente recibió el enfoque de tap looses. Se requiere un segundo toque para ponerlo enfocado o seguro. Sucede sólo cuando tengo mover que 1 elementos en la lista.
¿Hay alguna manera de abrir el IME y mantener el foco en EditText con sólo un toque?
- Cómo implementar Multiline EditText con el botón ActionDone (sin el botón Enter)
- Aplicación personalizada de Android IME predeterminada en el teclado de pantalla
- Android: ¿Cómo hacer que el botón en la vista del candidato en el teclado virtual?
- Crea Android LatinIME
- ICS teclado de vuelta, los botones de inicio no tomar contacto cuando se abre en la superposición
- Android: Cómo configurar el modo de vista de teclado preferido desde IME
- ¿Cómo puedo manejar ImeOptions?
- Android: Editar texto Ir botón
- Android: la fila del teclado personalizado no está centrada
- Disposición de teclado personalizada de Android dejando un margen de blanco en el lateral
- Teclado suave de Android no panorámico vista web
- Cómo agregar scrollview a keyboardView en android
- Forzar el IME de Android en pantalla completa
¿Desea que se redimensione la lista? ¿Puede anular el ListView.onSizeChanged y consumirlo en lugar de "bubbeling" a super.onSizeChanged (suponiendo que su suposición sobre la fuente de error es correcta)?
Resolví esto almacenando el EditText tocado en una variable y pidiendo enfocarlo después de un retraso. Es un hack, pero a veces Android requiere hacks.
Handler handler = new Handler(); handler.postDelayed(new Runnable() { public void run() { EditText editText = getListAdapter().tappedEditText; if (editText != null) { editText.requestFocus(); } } }, 100);
- Phonegap evento deviceready
- Google Analytics para Android: establece información sobre dispositivo móvil