无法在nexus 4 android 4.2.2上的webview中输入文本
我试图在web视图中打开一个网页,它在andoid 4.1.2及以下版本上运行良好,但当我在android 4.2.2即nexus 4中尝试相同的代码时,它没有从键盘获取任何输入 当我点击网页上的任何编辑文本时,键盘会打开,它也会显示编辑文本上的焦点,但只要我按下任何字符,键盘焦点就会从编辑文本中消失,字段上也不会键入任何内容。低是我的密码无法在nexus 4 android 4.2.2上的webview中输入文本,android,android-webview,android-4.2-jelly-bean,Android,Android Webview,Android 4.2 Jelly Bean,我试图在web视图中打开一个网页,它在andoid 4.1.2及以下版本上运行良好,但当我在android 4.2.2即nexus 4中尝试相同的代码时,它没有从键盘获取任何输入 当我点击网页上的任何编辑文本时,键盘会打开,它也会显示编辑文本上的焦点,但只要我按下任何字符,键盘焦点就会从编辑文本中消失,字段上也不会键入任何内容。低是我的密码 mWebView.getSettings().setJavaScriptEnabled(true); mWebView.getSetting
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.getSettings().setPluginState(PluginState.ON);
mWebView.getSettings().setAllowFileAccess(true);
mWebView.setWebViewClient(new MyWebViewClient());
mWebView.clearHistory();
mWebView.clearFormData();
mWebView.clearCache(true);
mWebView.loadUrl(strUrl);
mWebView.requestFocus();
/**
* webview client
*/
private class MyWebViewClient extends WebViewClient {
@Override
// show the web page in webview but not in web browser
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if ( !getSuceessParams(url) )
view.loadUrl(url);
return true;
}
@Override
public void onReceivedHttpAuthRequest(WebView view, HttpAuthHandler handler, String host, String realm) {
handler.proceed("checkin", "4good");
}
@Override
public void onPageFinished(WebView view, String url) {
System.out.println("onPageFinished " + url);
context.removeDialog(0);
super.onPageFinished(view, url);
}
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
System.out.println("onPageStarted " + url);
Fragment fragment = context.getLastFragment();
if ( fragment.getTag() == "campaign_donation_web_fragment" ) {
CheckinLibraryActivity.strProgressMessage = "Loading..";
context.showDialog(0);
}
super.onPageStarted(view, url, favicon);
}
}
我得到以下错误
****Should not happen: no rect-based-test nodes found
谢谢我有一个类似的问题,它似乎是通过不使用快捷键键盘而使用谷歌键盘解决的 我有一个类似的问题,它似乎是通过不使用快捷键键盘而使用谷歌键盘来解决的 在我的例子中,
TabHost
从后堆栈中的前一个片段窃取了每次按键的焦点。下面是我如何修复它的:
tabHost.addOnAttachStateChangeListener(new OnAttachStateChangeListener() {
@Override
public void onViewDetachedFromWindow(View v) {}
@Override
public void onViewAttachedToWindow(View v) {
tabHost.getViewTreeObserver().removeOnTouchModeChangeListener(tabHost);
}
});
有关此主题的更多信息,请参阅。在我的例子中,
TabHost
来自前一个堆栈片段,它在每次按键时都会窃取焦点。下面是我如何修复它的:
tabHost.addOnAttachStateChangeListener(new OnAttachStateChangeListener() {
@Override
public void onViewDetachedFromWindow(View v) {}
@Override
public void onViewAttachedToWindow(View v) {
tabHost.getViewTreeObserver().removeOnTouchModeChangeListener(tabHost);
}
});
有关此主题的详细信息,请参阅