我正在尝试调整UIWebView
的大小,以使其适合所加载页面的全部内容。为此,我获取webview的scrollview的内容高度,并将webview的高度设置为该值。
对于内容高度超过200的任何内容,此工作正常,视图可以缩放到完全适合页面而没有任何额外空间。但是当高度低于200的内容时,webview似乎达到了某种高度,而webView.scrollView.contentSize.height
将不会返回200以下的任何值。我留下了大量的空白。
这个主题有很多帖子,但似乎都没有涉及这个特定问题。当该值低于200时,返回实际内容高度的最佳方法是什么?
编辑:这是一个HTML应该渲染很短的例子,但结果是200pt高。
<meta name='viewport' content='width=device-width, user-scalable=yes'>
<html>
<head></head>
<body style='font-family:Helvetica neue; font-size:1.0em; color:#181818; -webkit-font-smoothing: antialiased;'><div>
Here's some example content.
<br/></div>
</body>
答案 0 :(得分:1)
请确保您的HTML
和BODY
代码不具有min-height
或height
css样式。
然后,你应该使用JavaScript获取高度。获取实际高度,而不是可滚动大小,这是某种未知的UIWebView决定。
所以[[webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.offsetHeight"] floatValue]
会这样做。
答案 1 :(得分:0)
我遇到了类似的问题,我使用javascript调用来获取内容高度并将Web视图的高度设置为该值,但568似乎是这些方法返回给我的最小值。我最终必须先将网页视图的高度设置为1,然后将高度设置为javascript调用的结果。