在ScrollView中的WebView或WebView中的ScrollView之间关于这个主题的讨论太多了,我完全迷失了!
在我的情况下,我有一个ScrollView,它拥有一个固定大小的UIImageView和一个可变大小的UIWebView。
根据NSLog()输出,我使用了以下解决方案似乎正确计算高度:
*编辑* 我的网页视图初始化如下:
CABBndGMedia *htmlMedia = [[currentPOI listMediaHtml] objectAtIndex:0];
NSData *htmlData = [NSData dataWithContentsOfURL:[htmlMedia localMediaFilename]];
poiHtml.delegate = self;
[poiHtml loadData:htmlData MIMEType:@"text/html" textEncodingName:@"" baseURL:[NSURL URLWithString:@""]];
poiHtml.scalesPageToFit = YES;
然后:
-(void)webViewDidFinishLoad:(UIWebView *)webView{
CGRect frame = poiHtml.frame;
frame.size.height = 1;
poiHtml.frame = frame;
CGSize fittingSize = [poiHtml sizeThatFits:CGSizeZero];
frame.size = fittingSize;
poiHtml.frame = frame;
NSLog(@"size: %f, %f", fittingSize.width, fittingSize.height);
}
*编辑* 更改Scrollview背景颜色后,我意识到WebView不会改变其高度,尽管显示了fitSize.height值。
这个问题似乎非常“天气”取决于我在Stackoverflow中读到的一切,其中一些解决方案似乎适用于某人,而不是其他人.... 无论如何,我能错过什么才能得到这个似乎最好的解决方案呢?
此致
答案 0 :(得分:0)
UIScrollView
的框架应该是您希望剪裁内容的边界。所以可能是你屏幕的大小。
您需要将滚动视图的contentSize
属性设置为您已计算的完整大小。然后滚动视图将允许您在该大小内滚动。