0

我正在实现一个自定义键盘InputMethodService。从聊天头的服务(像Facebook Messenger中的浮动小部件)从所选键盘是我的自定义ONE工作时的呼叫showInputMethodPicker(如Facebook Messenger中)在 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,欢迎使用其他方法(如果上面的方法一开始就错了)

关注此博客文章以创建“聊天头”和此stackoverflow 文章以了解如何使用showInputMethodPicker

4

1 回答 1

0

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

从服务细节开始活动

延迟使用postDelayed 细节

于 2020-08-21T11:48:21.083 回答