单击Android WebView中的输入字段时,必须打开软键盘

时间:2018-06-17 12:18:45

标签: javascript java android webview

我想点击我的WebView中的输入字段,当元素聚焦到>>>未打开<<<标准键盘(用于在设备上单击按钮后从本机扫描仪添加条形码)。

我尝试使用此代码来关闭键盘:

public static Activity getActivity(Context context) {
if (context == null) return null;
if (context instanceof Activity) return (Activity) context;
if (context instanceof ContextWrapper) return getActivity(((ContextWrapper)context).getBaseContext());
return null;
}

变体1 - 打开或关闭键盘,但仅限于活动开始。

getActivity(getContext()).getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); 

变体2 - 使用变体1后,键盘打开(用于测试关闭键盘),从js加载WebView调用事件后,键盘关闭并再次打开。此外,如果长按输入字段,键盘将关闭。但是,如果我取消按键,键盘会再次打开)

InputMethodManager imm = (InputMethodManager) getActivity(mContext).getSystemService(Context.INPUT_METHOD_SERVICE);
if (imm.isActive()){ 
imm.toggleSoftInput(InputMethodManager.HIDE_IMPLICIT_ONLY, 0); // hide
} else {
imm.toggleSoftInput(0, InputMethodManager.HIDE_IMPLICIT_ONLY); // show
}

this screen when i open activity this screen what i need, but on this screen i hold on input field more 2 sec. I need that effect on click

0 个答案:

没有答案