我正在使用 Objective C 创建一个应用程序,其中我使用的是UIWebView
以 HTML 格式显示内容。我正在使用下面的代码UIWebView
委托方法webViewDidFinishLoad
NSUInteger contentHeight = [[aWebView stringByEvaluatingJavaScriptFromString:[NSString stringWithFormat:@"document.body.scrollHeight;"]] intValue];
计算 webview 内容高度,这在iOS8
, iOS9
and iOS11
but in iOS10
iPhone 移动内容高度返回的值比实际内容值大得多。因此,我在屏幕中的网络视图底部出现了一些额外的空白区域。
我尝试了所有解决方案,但仅在 iOS 10 中得到相同的错误内容高度。请帮助我解决此问题。先感谢您!
我使用以下方法来获取 contentSize。
我在 webview 的滚动视图上添加了观察者(KVO)。
self.webView.scrollView.addObserver(self, forKeyPath: "contentSize", options: .new, context: nil);
现在,每当 webview 的 contentsize 发生变化时,我都会在这个方法中得到回调
override func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?) {
}
现在从此方法中获取对象的 contentSize 并使用它。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)