2010-03-27 8 views

Respuesta

2

Here es el código fuente del teclado virtual. Si revisa el código, verá que utiliza una clase Suggest que en su interior tiene diccionarios diferentes.

Si desea agregar palabras para un EditText específico, deberá agregar y eliminar o cambiar la frecuencia de una determinada palabra de esos diccionarios.

Algunas cuestiones:

  • no pude encontrar una manera de conseguir la instancia del InputMethodService. (Si puede, responda mi pregunta here)
  • Android permite a los programadores programar su propio InputMethodService. Estoy trabajando en uno yo mismo y mi implementación no usa esos diccionarios. Entonces su característica no funcionará con mi IME.

Yo sugeriría usar Auto Complete.

+0

Gracias por los puntos de vista, creo que voy a usar autocompletar. – Wilken

1

No se puede agregar palabras adicionales a los que el IME encuentra internamente, sin embargo se puede suministro de toda la venta a través de sus propias terminaciones InputMethodManager.displayCompletions():

http://developer.android.com/reference/android/view/inputmethod/InputMethodManager.html#displayCompletions(android.view.View, android.view.inputmethod.CompletionInfo [ ])

Esto es lo que utiliza la vista de texto completa automática para mostrar sus terminaciones en el IME, cuando el IME está en pantalla completa, por lo que no se puede ver. Tenga en cuenta que su aplicación sigue siendo responsable de mostrar las terminaciones, por lo que estarán disponibles para el usuario si el IME no está a pantalla completa.

(Y lo de la falta de documentación sobre ese método.)

+0

gracias por la información, supongo que las sugerencias no estaban destinadas a ser usadas de esta manera, así que me quedaré con autocompletar por ahora – Wilken

Cuestiones relacionadas