我正在尝试学习如何使用Android NavigationDrawer,并通过复制此处显示的代码https://github.com/javatechig/AndroidNavigationDrawer创建了一个小型演示应用。我能够成功编译代码并运行应用程序,但每当我选择NavigationDrawer中的一个选项来打开WebView中的网页时,我在Webview中看不到任何内容。我的logcat没有显示任何错误,但我收到一条消息:
W/AwContents: nativeOnDraw failed; clearing to background color
我尝试了this question here中提出的解决方案,但似乎没有一个解决我的问题。如果有人可以帮我弄清楚如何让这些网页出现在WebView中,那将非常感激。
编辑:仅供参考,我的项目SDK是Android API 19平台,我在JetBrains IntelliJ社区版中工作。
答案 0 :(得分:0)
您需要做的是为您的WebView设置WebViewclient(WebViewFragment.java):
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
BundlesavedInstanceState) {
//some code
webView.setWebViewClient(new WebViewClient());
}
现在,所有调用的url(来自NavigationDrawer)都将保留在WebView中。 如果你想改变这种行为,你可以例如覆盖WebView类的loadUrl方法。 如果webview中的用户单击了某个链接,但您想在外部浏览器中打开该链接,则必须覆盖WebViewClient类的shouldOverrideUrlLoading方法。
答案 1 :(得分:0)
我认为如果您在重新尝试之前删除所有片段,背景颜色和图像,它将会起作用。