如何用onclick监听器打开Android软键?

时间:2015-06-06 22:32:42

标签: android android-input-method

我有一个带按钮的视图。单击按钮,我希望软键盘弹出数字。我可以使用toggleSoftInput,但是,我认为没有办法改变输入类型。

public class TimerOnClickListener implements View.OnClickListener {
    @Override
    public void onClick( View view ) {
        Context context = view.getContext();

        InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);

        imm.toggleSoftInput( 0, 0 );
    }
}

如何仅使用数字切换输入?

3 个答案:

答案 0 :(得分:3)

以下代码会向您显示键盘:

InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(view, 0);

但是,如果您想强制显示为数字或电话键盘的键盘,则必须在该特定视图/小部件上设置输入类型。

InputType.TYPE_CLASS_NUMBER; 
InputType.TYPE_CLASS_PHONE;

例如

your_edit_text.setInputType(InputType.TYPE_CLASS_NUMBER);

致谢:Ritesh Gune InputMethodManager show numpad in webview

答案 1 :(得分:0)

检查this回答:

将inputType设置为EditText为“number”

显示键盘:

InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
inputMethodManager.showSoftInput(editText, 0);

答案 2 :(得分:0)

确保将XML视图设置为数字:

android:inputType="number"

应强制键盘为数字。