Java 如何在SurfaceView中使用android软键盘

Java 如何在SurfaceView中使用android软键盘,java,android,surfaceview,android-softkeyboard,ondraw,Java,Android,Surfaceview,Android Softkeyboard,Ondraw,我有一个表面视图,上面没有控件、文本框或任何其他类型的表单项。我希望能够: 1:触摸我在SurfaceView onDraw()方法上画的一个圆圈,然后打开默认的android软键盘。(我知道如何做触摸检测部分,只需要以某种方式打开软键盘) 2:当我键入时,我希望我选择的字母显示在画布上(同样,我知道如何绘制部分,但如何捕获用户首先选择的键?) 许多坦克 David您可以尝试以下方法来显示键盘: InputMethodManager imm = (InputMethodManager) getS

我有一个表面视图,上面没有控件、文本框或任何其他类型的表单项。我希望能够:

1:触摸我在SurfaceView onDraw()方法上画的一个圆圈,然后打开默认的android软键盘。(我知道如何做触摸检测部分,只需要以某种方式打开软键盘)

2:当我键入时,我希望我选择的字母显示在画布上(同样,我知道如何绘制部分,但如何捕获用户首先选择的键?)

许多坦克


David

您可以尝试以下方法来显示键盘:

InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED,0);

如果这对您有帮助,那么我想您可以通过覆盖活动的onKeyDown()方法来侦听关键事件!