2012-05-08 33 views
8

Estoy tratando de desactivar el texto predictivo para un determinado EditText, como se explica here, pero aún así obtener la función de autocompletar por la predicción ...No se puede desactivar el texto predictivo

Tengo un Samsung Galaxy S con XT9 habilitado

Cualquiera puede ayudar?

<EditText 
    android:id="@+id/search_field" 
    android:layout_width="300dp" 
    android:layout_height="27dp" 
    android:background="@drawable/bg_searchfield" 
    android:hint="@string/search_hint" 
    android:imeOptions="actionSearch" 
    android:inputType="text|textNoSuggestions|textFilter"/> 

Respuesta

19

Un comentario de this SO pregunta sugiere que el atributo xml no funciona para algunos modelos, pero que el java-método funciona en estos casos. Así que trate de esto:

edittext.setInputType(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS); 

edición:

Como se sugiere en el comentario anterior, aquí es una alternativa xml que ha trabajado:

android:inputType="textNoSuggestions|textVisiblePassword" 
+2

tuviera que establecer android: InputType = "textNoSuggestions | textVisiblePassword". Aceptaré tu respuesta para el puntero a la respuesta. Gracias. – jul

+0

He intentado con mEt_text.setInputType (InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD); Y funcionó para mí. – Ankit

+0

Esta respuesta tiene su compensación. Intente borrar una letra del final del texto después de usar este método. Tienes que presionar en forma prolongada la tecla borrar y cuando comienza a borrarse, borra todo el texto. –

5
android:inputType="textNoSuggestions|textVisiblePassword" 

esta solución funciona, pero usted tiene tener cuidado con eso. No puede cambiar el idioma del teclado en los dispositivos HTC (probablemente el motivo sea en el teclado Sense) si se establece el indicador textVisiblePassword.

así que tuve que establece InputType del código y escribir algo como esto:

public static int getInputTypeForNoSuggestsInput() { 
    if (android.os.Build.MANUFACTURER.equalsIgnoreCase("Samsung")) { 
     return InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS 
       | InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD; 
    } else { 
     return InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS; 
    } 
+0

Funciona para mí. ¿Hay necesidad de agregar arriba si la condición. –

Cuestiones relacionadas