重叠HTML内容在WebView中,使用时:webview.getSettings()。setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);

时间:2012-05-21 16:43:45

标签: android-layout android-webview html-encode

所以我将一些简单的HTML加载到webview中。 html采用以下格式:(它是提取的html,因此没有正文标记。

<p>..blah</p> 
<div style="text-align:center;">
<a href="http://services.runescape.com/m=rswikiimages/en/2012/5/combat1-18140712.jpg"    target="_blank">
<img src="http://services.runescape.com/m=rswikiimages/en/2012/5/combat1_thumb-18140804.jpg"></a></div>
<p>..blah</p>

在webview活动类中,我添加:

webInfo = "<body style=\"color:white;font-size:15px\">" + webInfo + "</body>";
//for setting the size and color of the text

我使用以下内容加载html:

webview.loadDataWithBaseURL(null,webInfo,"text/html","UTF-8",null);
// webInfo is an html string

我执行以下操作,使其不会水平滚动,以便图像适合屏幕。

webview.getSettings().setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);|

如果我不使用SINGLE_COLUMN,我总是水平滚动,即使文本很适合页面。我认为它终于解决了问题,但是当我加载它时我得到重叠的html。如果我用手指稍微放大或缩小,这就可以自行修复。

以下是发生的事情的图片:

enter image description here

问题1: 如何解决该问题并显示图像以使其适合屏幕并且不需要水平滚动?

问题2: 我也一直无法摆脱奇怪的符号,我的表现真的很奇怪。使用UTF-8,US-ACSII和许多Windows等几种不同的编码,它们似乎都没有用到摆脱符号。

我希望我已经清楚了,任何帮助都表示赞赏,我一直在摆弄这个O_O ......

1 个答案:

答案 0 :(得分:2)

添加Web视图设置:

webSettings.setLayoutAlgorithm(LayoutAlgorithm.TEXT_AUTOSIZING) //用于字体重叠的句柄。