//DetailViewController.m
@interface DetailViewController ()<UIWebViewDelegate>
@property (nonatomic,strong) UIWebView *webView;
@property (nonatomic,strong) UIScrollView *scrollView;
@end
@implementation DetailViewController
-(void)initUI
{
self.webView = [[UIWebView alloc]initWithFrame:CGRectMake(0, 0, kScreenSize.width, CGRectGetMinY(bottomView.frame))];
self.webView.backgroundColor = [UIColor clearColor];//清除背景色
[self.webView.subviews[0] setBounces:NO];//获取webView子视图(scrollview),禁止惯性
self.webView.scalesPageToFit = NO;//设置根据内容自适应
self.webView.delegate = self;//设置代理
[self.webView loadHTMLString:body baseURL:nil];
self.scrollView = [[UIScrollView alloc]initWithFrame:self.webView.frame];//实例化scrollView
self.scrollView.bounces = NO;//设置scrollView禁止惯性
[self.scrollView addSubview:self.webView];
[self.view addSubview:self.scrollView];
}
#pragma mark - UIWebViewDelegate
-(void)webViewDidFinishLoad:(UIWebView *)webView
{
//通过js获取webView.scrollView.contentSize.height;
CGFloat height = [[webView stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight;"] floatValue];
//CGFloat htmlHeight = [[webView stringByEvaluatingJavaScriptFromString:@"document.body.scrollHeight"] floatValue];
//webView.scrollView.contentSize.height;
//重置UIWebView的frame
CGRect frame = webView.frame;
frame.size.height = height;
webView.frame = frame;
//设置scrollView的内容大小
self.scrollView.contentSize = CGSizeMake(kScreenSize.width, height+300);
}
@end
转载于:https://my.oschina.net/u/2430056/blog/493651