2010-11-26 11 views
40

Quiero desactivar la visualización de "Palabras sugeridas" en el teclado virtual/soft cuando alguien está usando mi aplicación (solo en ciertos Activities). Para el teclado predeterminado de Android, esto se puede encontrar en 'Configuración' (en Configuración de sugerencia de Word).Cómo deshabilitar la visualización de "sugerencias" en el Teclado programable

¿Hay alguna manera de desactivarlo solo dentro de su aplicación, sin que el usuario tenga que hacerlo manualmente? Básicamente, quiero que el usuario escriba palabras sin dar ninguna pista.

Gracias!

+0

duplicado http://stackoverflow.com/questions/3789905/how-can-i-turnoff-suggestions-in-edittext – bancer

Respuesta

58

En el desarrollo de 2.0+, la supuesta forma en que se ponía android:inputType="textNoSuggestions" (ref). Desafortunadamente, las sugerencias aún se muestran en HTC Desire 2.2 (y probablemente también en otros dispositivos HTC Sense).
Usar android:inputType="textVisiblePassword" no ayudará tan bien como el teclado de software de HTC no le permitirá cambiar de idioma.
Así que me atengo a android:inputType="textFilter" para deshabilitar las sugerencias.

+1

No he intentado usar "android: inputType =" textFilter ", pero también puedo confirmarlo con controles EditText multi-lined en HTC Hense (usando HTC Hero con una ROM 2.1)" android : inputType = "textVisiblePassword" no funciona. Funciona cuando EditText NO tiene líneas múltiples. ¡Gracias! – Thira

+0

para HTC Desire x, "android: inputType =" textFilter "funcionado. Gracias – alicanbatur

+3

" textVisiblePassword "desactivar Emoji, no puedo usar eso. Tengo sugerencias de eliminación con android: inputType =" textNoSuggestions "y android: privateImeOptions =" ​​nm "(nm: No Micro) – fingerup

5

Existen dos formas que conozco para deshabilitar el autocompletado. Una forma es a través del XML configurando android: inputType = "textVisiblePassword" en el diseño xml.

La otra forma es a través de un código como el siguiente

EdtiText editTextBox = findViewById(R.id.myEditTextView); 
editTextBox.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD); 
+3

No puede deshabilitar sugerencias para el campo de contraseña como este. Es mejor usar EditorInfo.TYPE_TEXT_FLAG_NO_SUGGESTIONS –

12

Esto funciona para mí con el teclado stock, incluso en HTC con 2,2

final EditText et = (EditText) findViewById(R.id.SearchText); 
et.setInputType(et.getInputType() 
    | EditorInfo.TYPE_TEXT_FLAG_NO_SUGGESTIONS 
    | EditorInfo.TYPE_TEXT_VARIATION_FILTER); 
+2

Me gustaría agregue una arruga que encontré. OR-ing esos indicadores para el inputType existente puede no funcionar. En mi caso en un Samsung Galaxy SIII que ejecuta 4.04, el inputType existente era EditorInfo.TYPE_CLASS_TEXT cuando estaba inflado. O-ing las banderas adicionales no impidió las sugerencias. Sin embargo, si configuro InputType solo para EditorInfo.TYPE_TEXT_FLAG_NO_SUGGESTIONS, eso impidió con éxito las sugerencias: et.setIn putType (EditorInfo.TYPE_TEXT_FLAG_NO_SUGGESTIONS); Espero que esto ayude. –

1

android:inputType="textPhonetic" esconde sugerencias de teclado virtual en Android 1.6.

0

Si está utilizando InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS en la actividad, funcionará bien. En caso de DialogFragment, debe colocar en InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS onActivityCreated() controlador de la siguiente manera: -

@Override 
    public void onActivityCreated(Bundle savedInstanceState) { 
     super.onActivityCreated(savedInstanceState); 
     EditText editTextUsername = (EditText)dialogView.findViewById(R.id.txtUsername); 
     editTextUsername.setInputType(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS); 
} 
0

esperanza que esto funciona para usted,

editText.setInputType(InputType.TYPE_CLASS_TEXT|InputType.TYPE_TEXT_FLAG_CAP_SENTENCES|InputType.TYPE_TEXT_FLAG_MULTI_LINE|InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS); 
17

Puede desactivar sugerencias sobre el teclado suave mediante la adición de la línea siguiente en el xml -

android:inputType="textNoSuggestions" 

Sin embargo, según this artículo, puede o no ser compatible con el IME (el teclado).

Si se produce este problema, el método siguiente funciona con seguridad -

android:inputType="textNoSuggestions|textVisiblePassword" 
+0

Funciona también para Samsung Galaxy Tab 4 (Android 4.4.2). –

6

En mi 6P corriendo turrón, nada funcionó. Mientras está vacía, la barra de sugerencias permanece activa porque tiene el ícono del micrófono en el lado derecho. Para deshacerme de eso, utilicé la sugerencia de fingerup en uno de los comentarios y ¡funcionó! Así que decidí escribir una respuesta real para que la gente no se lo pierda. Para recapitular aquí es lo que he usado:

android:inputType="textNoSuggestions|textFilter|textVisiblePassword" 
    android:privateImeOptions="nm" 

inputType="textNoSuggestions|textFilter|textVisiblePassword" impide sugerencias, y privateImeOptions="nm" (siglas de "ningún micrófono") evita que la barra de aparecer porque todavía sería desde el botón de micrófono que está en él. Por lo tanto, es necesario usar ambos atributos porque si todo lo que hace es especificar que no hay micrófono, entonces la barra todavía se muestra con recomendaciones.
Thx de nuevo a fingerup por mencionar el truco nm. ;)

+0

Para eliminar sugerencias de líneas ... tns – FlipNovid

Cuestiones relacionadas