问题描述
我有一个应用程序,可以在用户的手机上安装我们的自定义键盘。有一个教程,然后在最后一页上有几个安装步骤。按下第一个按钮时,会将用户发送到手机设置以启用我们的键盘:
private const val CALL_KEYBOARD_SETTINGS = 1234
.
.
.
val callKeyboardSettings = Intent(Settings.ACTION_INPUT_METHOD_SETTINGS)
startActivityForResult(callKeyboardSettings,CALL_KEYBOARD_SETTINGS)
当用户启用我们的键盘并从该设置屏幕退出时,我们返回到我的应用程序,我检测到键盘已启用(一切正常)然后我启用允许用户选择的下一个按钮我们的键盘默认:
val imeManager =
requireActivity().getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
imeManager.showInputMethodPicker()
我已经记录了它,并且这些行被调用时没有错误,但是...选择弹出窗口没有出现。如果我完全退出这个屏幕,然后重新进入它,那么这些行就可以正常工作,所以这不是权限问题,也不是我的手机问题。这只是在我刚从启用键盘返回时的特定情况
有人建议推迟,所以我写道:
val imeManager =
requireActivity().getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
Handler().postDelayed({imeManager.showInputMethodPicker()},500)
但这没什么区别。
有人知道这里出了什么问题吗? 谢谢
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)