java - 启动webview后软键盘一直在

标签 java android android-softkeyboard

我有一个使用某些凭据登录到 Web 应用程序的应用程序。登录启动 webview。

问题来了。

在模拟器(Nexus_S_Google 和带有 API 21 的 Nexus 5)和三星平板电脑上,当 webview 出现时键盘消失。这将是所需的行为。在两款不同的手机(Samsung 5s 和 Samsung Galaxy Note 5)上,键盘不会消失。这只是电话的工作方式吗?或者有没有办法调用这种行为?我不明白为什么它适用于平板电脑和模拟器而不是手机。

这是我尝试过的。

在 list 中。

android:windowSoftInputMode="adjustPan">

在 Activity XML 中

android:focusable="true"
android:focusableInTouchMode="true"/>

在 webview 获取 url 后在 MainActivity 中。

webView.requestFocus();

最佳答案

好吧,这花了很多时间,但这就是我为解决问题所做的。

创建方法

private void fKeyboardClose()
    {
        InputMethodManager inputMethodManager = (InputMethodManager)getSystemService( Activity.INPUT_METHOD_SERVICE);
        inputMethodManager.hideSoftInputFromWindow( this.getCurrentFocus().getWindowToken(), 0);
    }

然后我在提交按钮的 onClick 之后立即调用它。

submit.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                fKeyboardClose();

                textstring(phone, login, pass);
                prefwrite(editor);
                pushurl();
                clear(phone, login, pass);

关于java - 启动webview后软键盘一直在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29987909/

相关文章:

java - 使用充气城堡验证签名

android - 您可以在 Android 应用程序中调用 python 例程吗?

android - 无法运行安卓 Espresso 测试

android - 如何使用可调整大小的圆角矩形作为 KeyIcon

java - 我需要迭代和计算 Nested Map<key, someObjectArray[]>

java - 如何获取HttpURLConnection的ResponseCode的描述?

android - 触摸编辑文本时键盘不显示

android - 如何将 EditText 滚动到布局的最顶部?

java - 如何从公开共享的 GitHub 中 stash 个人信息?

android - 如何在 TextInputLayout 中使用(提示)标签 float 左侧可绘制对象?