1

我有带图像的 WebView,一切正常,但如果我禁用网络连接。用图像打开我的 webview,我会得到一个丑陋的非图像。我如何用自定义图像替换默认的“无图像”?有人有想法吗?

我使用 loadData 和缓存文件。

> String customHtml = "<html><body><h1>Hello,</h1>" +
>             "<img src=\"http://somesite.com/image.jpg\">" +
>             "</body></html>";
>     webView = (WebView) findViewById(R.id.MyWebView);
>     webView.loadData(customHtml, "text/html; charset=utf-8", "UTF-8");

附言。对不起,我的英语不好。

在此处输入图像描述

4

2 回答 2

0

是的,我找到了解决方案。用 html...

<img src="image.png" onerror="this.src='image-not-found.png';" />

这个src将是..

onerror="this.src='"+file:///android_asset/res.png+"';" />

不要忘记在 webview 中打开 JavaScript 支持

    webSettings.setJavaScriptEnabled(true);
于 2014-10-07T19:24:12.330 回答
0

我建议在加载 webView 之前检查互联网连接。Android 指南也建议这样做。查看我的示例:

//Check for connection
    ConnectivityManager cm =
            (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
boolean isConnected = activeNetwork != null &&
        activeNetwork.isConnectedOrConnecting();

return isConnected;
于 2014-10-07T19:00:21.143 回答