Uso de Android: el atributo de dígitos para restringir caracteres detiene la acción al siguiente botón que funciona

Tengo una serie de campos EditText en una aplicación de Android y he usado Android: dígitos para evitar que ingresen caracteres no válidos.

p.ej:android:digits="@string/validchars" (donde "validchars" es un recurso de cadena de todos los caracteres válidos, por ejemplo, A-Z, 0-9 y algunos signos de puntuación)

El problema es que, si el usuario presiona la tecla ENTRAR en el teclado virtual que usó para llevarlos al siguiente campo, pero desde que agregué Android: el bit de dígitos ha dejado de funcionar. He intentado agregar \ n a lavalidchars pero esto solo permite retornos de carro en los cuadros de texto de una sola línea (!), por lo que no ayuda. He intentado juguetear con las imeOptions (añadiendoactionNext etc) pero esto tampoco parece arreglarlo. He leído sobre TextWatchers y InputFilters, pero ambos parecen ser demasiado complicados por lo que estoy tratando de hacer y por elandroid:digits bit funciona bien para detener los caracteres no válidos.

¿Alguien tiene alguna idea?

Estoy usando la versión 8 del SDK de Android y estoy dirigido a dispositivos 2.2 y 2.3.5.

Respuestas a la pregunta(1)

Su respuesta a la pregunta