我有一个Webview,在登录页面手动显示键盘并将焦点放在输入框中。
输入框:
<input type="password" maxlength="4" pattern="[0-9]*" id="pin">
聚焦并显示键盘:
webView.requestFocus(View.FOCUS_DOWN);
webView.loadUrl("javascript:document.getElementById('pin').focus();");
InputMethodManager imm = (InputMethodManager) activity.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(webView, InputMethodManager.SHOW_IMPLICIT);
登录界面只包含一个四位数字的 PIN 码输入框。问题在于默认情况下,它显示的是常规的字母键盘,而我希望它显示数字键盘。我看过很多使用 EditText 属性控制键盘类型的例子。
InputMethodManager mgr = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
EditText.setInputType(InputType.TYPE_CLASS_PHONE); [select Input type as according to ur requirement]
mgr.showSoftInput(EditText, InputMethodManager.SHOW_IMPLICIT);
但是有没有可能直接告诉键盘要显示哪种类型,或者在WebView上设置属性呢?