【问题标题】:InputMethodManager.showInputMethodPicker not showing when custom keyboard in my app is not currently selectedInputMethodManager.showInputMethodPicker 当前未选择我的应用程序中的自定义键盘时未显示
【发布时间】:2020-11-24 13:27:45
【问题描述】:

我正在使用InputMethodService 实现自定义键盘。当所选键盘是我的自定义一个工作时,从一个服务showInputMethodPicker showInputMethodPicker showInputMethodPicker showInputMethodPicker Gboard,输入法选择器 UI 不显示,在 android studio 的运行控制台上没有错误消息。选择的键盘是指设置中的默认键盘。

// inside main activity, start 'chat head' service when a button in app is clicked 
startService(Intent(this@MainActivity, FloatingViewService::class.java))

// inside 'chat head' service, show picker UI when a button in expanded 'chat head' menu is clicked
val imm = getSystemService(INPUT_METHOD_SERVICE) as InputMethodManager
imm.showInputMethodPicker()

如何使showInputMethodPicker 工作,即使我的自定义键盘没有被选中或者是不可能的?对Android不熟悉,欢迎替代方法(如果上面的方法一开始就错了)

关注blog post 创建“聊天头”,关注stackoverflow post 如何使用showInputMethodPicker

【问题讨论】:

    标签: android keyboard custom-keyboard android-input-method inputmethodmanager


    【解决方案1】:

    相关post,问题提到使用postDelay,所以我目前的解决方法是:当在聊天头服务中单击按钮时,使用putExtra,活动onCreate创建使用布尔数据启动活动的意图被调用,如果布尔值为真,在延迟一段时间后调用showInputMethodPicker(对我来说是 500 毫秒),将布尔值设置为 false

    从服务details开始活动

    延迟使用postDelayeddetails

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-31
      • 1970-01-01
      • 2018-01-18
      相关资源
      最近更新 更多