我在我的原生应用程序中渲染webview时遇到了困难,我在下面粘贴了一些屏幕截图,显示了每次宽度变化时webview的行为方式。
此外,我正在使用抽屉菜单,这使得每次打开菜单抽屉时webview都会向右移动
WEBVIEW加载时的屏幕显示
直到现在看起来还不错,但现在当我打开和关闭抽屉菜单时,它的宽度不会改变回100%并保持在50%
打开和关闭抽屉菜单后
当我打开抽屉菜单时,它也会模糊webview
抽屉菜单打开时屏幕亮起
我也尝试了一些不同的webview设置,但没有一个工作,这里也是我的webview java代码
JAVA CODE
mWebView = (WebView) findViewById( R.id.webView1 );
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.getSettings().setSupportZoom(false);
mWebView.getSettings().setBuiltInZoomControls(false);
// Load URL
mWebView.loadUrl(requestUrl);
答案 0 :(得分:1)
Following our discussion,问题似乎与android-menudrawer
库有关。具体而言,打开抽屉后硬件加速小部件无法正确显示,this issue concerning MapView v2也对此进行了描述。
最基本的解决方案是通过在清单中设置android:hardwareAccelerated="false"
来禁用硬件加速,但我建议您探索更好的解决方案,例如上述问题的作者建议的this one:< / p>
我发现了一个简单的黑客。
您只需使用内容占位符和创建RelativeLayout 始终可见的透明覆盖层。内部的每次点击活动 内容工作正常,错误也消失了:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <FrameLayout android:id="@+id/fragment_placeholder" android:layout_width="match_parent" android:layout_height="match_parent" /> <FrameLayout android:layout_width="match_parent" android:layout_height="match_parent" android:background="@android:color/transparent" /> </RelativeLayout>