2012-06-22 8 views
17

Estoy usando un cuadro EditText para que el usuario ingrese su dirección de correo electrónico.Android: EditText.setInputType() cómo configurar para el correo electrónico pero no sugerir automáticamente

lo configuro usando:

box.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS); 

Esto se traduce en el teclado en pantalla apareciendo con la '@' y '' (y algunos teclados '.com') claves en el diseño inicial del teclado. Genial, justo lo que quiero.

Sin embargo, veo que el texto es todo negro (cuando especifiqué blanco). Descubrí que esto se debe a una sugerencia automática. Si voy al Settings->Languages/Keyboards->Touch Input->TextInput y desactivo Predicción y finalización de palabras, el texto aparece en blanco.

Ahora la pregunta: ¿Cómo puedo hacer que el autocompletar se deshabilite programáticamente para esto?

He intentado fijar la caja haciendo:

box.setInputType(InputType.TYPE_CLASS_TEXT | TYPE_TEXT_FLAG_NO_SUGGESTIONS); 

Esto se traduce en todo el texto blanco (es decir, ninguna sugerencia automática). ¡Pero ya no tengo botones de correo electrónico '@' y '.com'! Bah-humbug.

De todos modos para obtener los dos? Gracias.

Respuesta

32

Este código debe hacer el truco:

box.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS | InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS); 

Usted puede añadir tantas banderas como desee, siempre y cuando sean compatibles entre sí.

+0

Gracias, me olvidé de mencionar que ya había probado esa. También esperaba que esto funcionaría. Parece que la sugestión automática sigue activada, incluso con el indicador NO_SUGGESTIONS en este caso. – bubba

+0

¿Qué versión de dispositivo está probando? ¿Estás en el emulador o en un dispositivo real? – Eric

+0

Droid Incredible 2 en Android 2.3.4. – bubba

Cuestiones relacionadas