【发布时间】:2015-04-13 12:02:10
【问题描述】:
我想在视图中显示 HTML 内容。因此,我正在使用 webview 呈现 HTML 内容。 webview 在 uiscrollview 中。
由于 HTML 的变化,我需要调整 webview 和滚动视图的高度。我是这样做的:
func webViewDidFinishLoad(webView: UIWebView) {
webView.scrollView.scrollEnabled = false
webView.frame.size.height = webView.scrollView.contentSize.height
self.scrollView.contentSize.height = 267.0 + webView.scrollView.contentSize.height
}
但是当我运行应用程序时会发生这种情况:
起初它看起来很棒。但是当我开始滚动时,webview 会缩小到原来的大小:
知道为什么当我开始滚动滚动视图时网络视图会缩小吗?
我认为这可能与限制有关。也许它会尝试将 webview 的高度恢复到原来的高度。
【问题讨论】:
-
这可能是 HTML 问题。您是否检查过 webViewDidFinishLoad 被调用了多少次以及 webview 内容高度是如何变化的?
-
不,我该如何检查?
-
只需在方法内部添加一个 println(webView.scrollView.contentSize.height) 并检查 xcode 中的输出
-
但它只在我开始滚动后才会改变,所以我需要一种方法来仅在我开始滚动后触发它。
标签: ios swift uiwebview uiscrollview xcode6