使用场景介绍,如app商城商品详情页,里面的图文详情大部分是使用webview来做,这就要求我们要对webview有一个自适应的高度来显示网页,可以在手机淘宝上看一下效果,下面来说一下解决方案.
在网上也有很多解决方法,大部分是提供了四中解决方案(可以百度iOS获取webview内容高度),如果很不幸这四种都没有满足你的需求,往下看,这一种应该可以解决.
self.webView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, APP_WIDTH, 300)];
-(void)webViewDidFinishLoad:(UIWebView *)webView {
[webView.scrollView addObserver:self forKeyPath:@"contentSize" options:NSKeyValueObservingOptionNew context:nil];
}
-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary<NSKeyValueChangeKey,id> *)change context:(void *)context {
if ([keyPath isEqualToString:@"contentSize"]) {
CGSize fittingSize = [_webView sizeThatFits:CGSizeZero];
NSLog(@"===fittingSize==%@",NSStringFromCGSize(fittingSize));
self.webView.height = fittingSize.height;
}
}