How do i add words to the suggestions on top of the soft keyboard

前端 未结 2 1775
陌清茗
陌清茗 2021-02-06 12:06

Is there any way to add words to the suggestions in the soft keyboard? For a specific Edittext field i would like to add a list of names to the suggestions that pops up on top o

相关标签:
2条回答
  • 2021-02-06 12:43

    You can't add additional words to the ones the IME finds internally, however you can whole-sale supply your own completions via InputMethodManager.displayCompletions():

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

    This is what the auto complete text view uses to show its completions in the IME, when the IME is full screen so it can't be seen. Note that your app is still responsible for showing the completions itself, so they will be available to the user if the IME is not full screen.

    (And sorry about the lack of documentation on that method.)

    0 讨论(0)
  • 2021-02-06 13:02

    Here is the source code of the soft keyboard. If you go through the code, you will see that it uses a Suggest class which inside has different dictionaries.

    If you want to add words for a specific EditText you would need to add and remove or change freq of a certain word from those dictionaries.

    Some issues:

    • I couldn't find a way to get the InputMethodService's instance. (If you can, please answer my question here)
    • Android allows developers to program their own InputMethodService. I am working on one myself and my implementation doesn't use that dictionaries. So your feature will not work with my IME.

    I would suggest using Auto Complete.

    0 讨论(0)
提交回复
热议问题