我在应用程序中添加了一个自定义键盘当使用另一个具有文本输入的应用程序时,它可以正常工作。我已经更改了settings / language and input
,使其启用并用作默认值。
我的问题是我不知道如何在我的应用程序中显示它。我有一个使用画布绘制终端屏幕的视图。没有文本输入,但我确实需要键盘来显示。
如何强制显示键盘?我看到了几种方法,使用清单、使用输入法管理器等等,但在我的情况下都不起作用。我必须集中输入才能显示键盘吗?难道我就不能随时展示和隐藏它吗?
谢谢。
编辑:我设法通过添加文本输入并点击来显示键盘。但我仍然不知道如何在没有文本输入的情况下显示它。
您说过它已经是默认的了。所以,你可以简单地手动显示:
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(yourEditText, InputMethodManager.SHOW_IMPLICIT);
隐藏它:
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(yourEditText.getWindowToken(), 0);
这样,用户就不必点击文本输入来显示键盘。如果这有帮助,请接受。
编辑
您还必须请求焦点:
yourEditText.requestFocus()