Java 通过代码显示软键盘

Java 通过代码显示软键盘,java,android,Java,Android,如何使键盘保持可见,或通过显示键盘以供下次编辑文本视图。如果输入无效,我希望保持键盘可见。或者,如果输入有效,请在请求聚焦下一个编辑文本后显示键盘 我的确认: private boolean processTextField( EditText str ) { Log.v( "Exfo. Processing: ", str.getText().toString() ); boolean notZero = ( (str.getText().toString(

如何使键盘保持可见,或通过显示键盘以供下次编辑文本视图。如果输入无效,我希望保持键盘可见。或者,如果输入有效,请在请求聚焦下一个编辑文本后显示键盘

我的确认:

private boolean processTextField( EditText str ) {

        Log.v( "Exfo. Processing: ", str.getText().toString() );

        boolean notZero = ( (str.getText().toString().length() > 0) &&  (this.notZero(str.getText().toString())) ); // checks id value is zero

        if ( notZero ) {
            if ( this.frameSizeLength() == 0 ) {
                txtFrameSize.requestFocus();
                // TO DO:  display keyboard
            }
            else if ( this.thruPutLength() == 0 ) {
                txtThruPut.requestFocus();
                // TO DO:  display keyboard
            }
            else
                    this.calcResults(Integer.valueOf(txtFrameSize.getText().toString()), Float.valueOf(txtThruPut.getText().toString()) );
            }
            else {
                this.showMSG("Enter a value greater than zero.");
                // TO DO:  keep focus on current EditTExt, display keypad
            }
    }
}
编辑:只有两个EditText视图:framesize和thruput

现在,不管怎样,键盘在按下返回/完成按钮后都会隐藏。我的目标是安卓2.2,但我现在只关注触摸设备。 谢谢
MD

您可以使用此命令在指定视图上强制打开它

InputMethodManager imm = (InputMethodManager) getSystemService(
    Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(editText, InputMethodManager.SHOW_FORCED);

不确定是否正确地实现了这一点。作为测试,我将其放入验证块,但什么也没发生。尝试阅读文档,但没有帮助,只是说将显示输入法。除了指定EditText的输入外,应用程序设置中是否有应标记的内容?已解决。必须在警报的事件侦听器中添加一行@RobbyPond,谢谢你走上正轨。