近期做东西,将 UIWebView 嵌套在 UIScrollView 里,由 UISCrollView 控制滚动,需要使 UIWebView 的高度同内容高度一致,网上搜索的到代码:
<!-- lang: cpp -->
htmlHeight = [webView stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight"];
这段代码是无效的,body 获取到的 offsetHeight,为显示区域的高度,因此修改为:
<!-- lang: cpp -->
htmlHeight = [webView stringByEvaluatingJavaScriptFromString:@"document.body.scrollHeight"];
scrollHeight 为网页内容的实际高度。
之后,自然需要关闭 UIWebView 的滚动效果,否则将会影响整体页面滚动,代码如下:
<!-- lang: cpp -->
UIScrollView *tempView=(UIScrollView *)[webView.subviews objectAtIndex:0];
tempView.scrollEnabled=NO;
修改 UIScrollView的内容高度。
<!-- lang: cpp -->
scrollView.contentSize = CGSizeMake(width, height);
本文讨论了如何在iOS应用中将UIWebView嵌套在UIScrollView中,并通过JavaScript获取网页内容实际高度,同时关闭UIWebView滚动效果,以实现整体页面的平滑滚动。关键步骤包括使用JavaScript获取网页内容高度,修改UIScrollView内容高度,并禁用UIWebView滚动。
5106

被折叠的 条评论
为什么被折叠?



