我从服务器及其带有spans和img标签的basiclay html conetnt接收数据。
这里是:
<p><em>בדיקה לא למחוק</em></p>
<p> </p>
<p><u>בדיקה לא למחוק</u></p>
<p> </p>
<p><strong>בדיקה לא למחוק</strong><img src="http://images1.ynet.co.il/PicServer5/2017/12/29/8247918/824791601000100980734no.jpg" /></p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p><img src="https://images1.ynet.co.il/PicServer5/2017/12/29/8247918/824791601000100980734no.jpg" /></p>
<p> </p>
为了在webview中加载数据我做了这个:
mWebViewMainContent = view.findViewById(R.id.webview_article_content);
WebSettings settings = mWebViewMainContent.getSettings();
settings.setDefaultTextEncodingName("utf-8");
StringBuilder sb = new StringBuilder();
//// TODO: 28/12/2017 handle languages
sb.append("<HTML dir=\"rtl\" ><HEAD><LINK href=\"theCss.css\" type=\"text/css\" rel=\"stylesheet\"/></HEAD><body style=\"direction:rtl ;\" > ");
sb.append("<div class=\"article-page\"><p>");
sb.append(Html.fromHtml((String) article.getMain()).toString());
sb.append("</p></div>");
sb.append("</body></HTML>");
mWebViewMainContent.loadDataWithBaseURL("file:///android_asset/", sb.toString(), "text/html", "utf-8", null);
我成功地在网页视图中显示内容,但没有跨度,图片网址没有加载? 这是为什么 ?
有人能告诉我一个我在这里失踪的例子吗?
答案 0 :(得分:0)
尝试使用chrome调试您的webview:
webview.setWebContentsDebuggingEnabled(真);
在您的计算机上使用网址:chrome://inspect/#devices
打开Chrome
在您的设备上运行您的应用并打开包含您的WebView的活动
将您的设备连接到计算机
您现在可以使用chrome调试html代码!
答案 1 :(得分:0)
我解决了,这是代码:
mWebViewMainContent = view.findViewById(R.id.webview_article_content);
WebSettings settings = mWebViewMainContent.getSettings();
settings.setDefaultTextEncodingName("utf-8");
StringBuilder sb = new StringBuilder();
//// TODO: 28/12/2017 handle languages
sb.append("<HTML dir=\"rtl\" ><HEAD><LINK href=\"theCss.css\" type=\"text/css\" rel=\"stylesheet\"/></HEAD><body style=\"direction:rtl ;\" > ");
sb.append(article.getMain());
sb.append("</body></HTML>");
mWebViewMainContent.setWebContentsDebuggingEnabled(true) ;
mWebViewMainContent.loadDataWithBaseURL("file:///android_asset/" , "<style>img{display: inline;height: auto;max-width: 100%;}</style>"+ sb.toString(), "text/html", "utf-8", null);