启动webview后,软键盘保持不变

时间:2015-05-01 13:39:09

标签: java android android-softkeyboard

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

这是问题所在。

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

这是我尝试过的。

在清单中。

android:windowSoftInputMode="adjustPan">

在活动XML

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

在webview获取网址后的MainActivity中。

webView.requestFocus();

1 个答案:

答案 0 :(得分:0)

好的,我花了很多力气,但这就是我为解决这个问题所做的。

创建方法

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);