我有一个使用某些凭据登录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();
答案 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);