Cordova - 隐藏键盘而不会失去焦点

时间:2018-04-17 15:53:30

标签: cordova cordova-plugins

我正在构建一个使用带外部键盘的设备(条形码扫描仪)的应用程序。所以,我的主键盘是扫描仪。

我有一些文字输入,当输入有焦点时,我不想看键盘(我从扫描仪上读取)。

在其他情况下,我会提供一个特定按钮来显示/隐藏键盘。

如何在不丢失焦点的情况下隐藏键盘?

在github上查找我发现了一个显示/隐藏键盘的插件..但没有运气..这就是代码:

@Override
    public boolean execute(String action, JSONArray args, CallbackContext callbackContext) throws JSONException {
    Activity activity = this.cordova.getActivity();
    InputMethodManager imm = (InputMethodManager)activity.getSystemService(Context.INPUT_METHOD_SERVICE);

    View view;
    try {
        view = (View)webView.getClass().getMethod("getView").invoke(webView);
    }
    catch (Exception e){
        view = (View)webView;
    }

    if("show".equals(action)){
        imm.showSoftInput(view, 0);
        callbackContext.success();
        return true;
    }
    else if("hide".equals(action)){
        imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
        callbackContext.success();
        return true;
    }
    callbackContext.error(action + " is not a supported action");
    return false;
    }

0 个答案:

没有答案