Javascript Android Webview中的Web应用与软键盘导航不一致
我有一个用EmberJS编写的web应用程序,通过一个本质上只是web视图的应用程序在Android设备上访问。该应用程序的目标是Android 4.1/API级别16,而我们仅限于此 有时,当使用软键盘上的“下一个”和“上一个”键在字段之间导航时,软键盘将关闭,而不会在下一个字段上重新打开。我们经常在将焦点从文本字段移动到选择字段时看到这个问题,在选择字段中,软键盘应该替换为选择对话框,然而,我们看到的只是从文本字段移动到文本字段 如何纠正此行为并使软键盘/选择对话框始终显示?下面是我根据我找到的其他堆栈溢出/开发博客已经尝试过的事情列表 添加了一个触控式监听器以关注web视图。这没有明显的效果Javascript Android Webview中的Web应用与软键盘导航不一致,javascript,android,ember.js,webview,webkit,Javascript,Android,Ember.js,Webview,Webkit,我有一个用EmberJS编写的web应用程序,通过一个本质上只是web视图的应用程序在Android设备上访问。该应用程序的目标是Android 4.1/API级别16,而我们仅限于此 有时,当使用软键盘上的“下一个”和“上一个”键在字段之间导航时,软键盘将关闭,而不会在下一个字段上重新打开。我们经常在将焦点从文本字段移动到选择字段时看到这个问题,在选择字段中,软键盘应该替换为选择对话框,然而,我们看到的只是从文本字段移动到文本字段 如何纠正此行为并使软键盘/选择对话框始终显示?下面是我根据我找
browser.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
case MotionEvent.ACTION_UP:
if (!v.hasFocus()) {
v.requestFocus();
}
break;
}
return false;
}
});
我在AndroidManifest.xml中添加了以下内容,但这只是导致视图端口不移动到具有焦点的字段
android:windowSoftInputMode="adjustNothing"
我编写了一个可以直接从JavaScript调用的接口方法,JavaScript试图显示软输入键盘。我们的测试人员说,这在总体上提高了可靠性,但在选择下拉列表和文本输入字段之间仍然存在问题
爪哇
JavaScript/Ember
非常感谢您的帮助
更新
一些可能有用的附加信息,再加上试图让问题更清楚一些
我们的客户正在使用Galaxy Note II作为他们在安卓4.1上运行的首选设备。我们的应用程序使用API级别16,因此我们只使用旧的Webkit Web视图,而不是在4.4/API级别19中推出的Chromium实现
public void showSoftKeyboard() {
InputMethodManager imm = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
imm.showSoftInput(browser, 0);
}
if (window.jsinterface) {
window.jsinterface.showSoftKeyboard();
}