1. webview 控件封装
@implementation MineWebBkg
-(id)initWithFrame:(CGRect)frame{
self = [super initWithFrame:frame];
if (self) {
[self drawView];
}
return self;
}
-(void)drawView{
self.bkgView = [[UIView alloc]init];
self.bkgView.userInteractionEnabled = YES;
self.bkgView.backgroundColor = [UIColor whiteColor];
[self addSubview:self.bkgView];
[self.bkgView mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.mas_top);
make.height.mas_equalTo(1);
make.left.mas_equalTo(self.mas_left);
make.right.mas_equalTo(self.mas_right);
}];
//图文详情
if (!_webView) {
self.webView = [UIWebView new];
[self.bkgView addSubview:self.webView];
}
self.webView.scalesPageToFit = YES;
self.webView.delegate = self;
self.webView.dataDetectorTypes = UIDataDetectorTypeNone;//添加目的去掉可以点击链接(但是网络连接没有实现www.xxxx.html)
[self.webView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.mas_equalTo(self.bkgView);
make.top.mas_equalTo(self.bkgView.mas_top);
make.height.mas_equalTo(1);
}];
}
//请求成功后自适应高度
- (void)webViewDidFinishLoad:(UIWebView *)webView{
/*
self.navigationItem.title = [webView stringByEvaluatingJavaScriptFromString:@"document.title"];
_webView.scalesPageToFit = YES;
*/
// CGFloat width_scr = [[webView stringByEvaluatingJavaScriptFromString:@"document.body.scrollWidth"] floatValue];
// if(width_scr==0){
// width_scr = SCREEN_WIDTH-12*2;
// }
// CGFloat scale = width_scr/(SCREEN_WIDTH-12*2);
//
// CGFloat height = [[webView stringByEvaluatingJavaScriptFromString:@"document.body.scrollHeight"] floatValue]/scale;
CGSize size = [webView sizeThatFits:CGSizeZero];
[self.webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.style.webkitTouchCallout='none';"];
webView.scrollView.scrollEnabled = NO;
webView.scrollView.showsVerticalScrollIndicator = NO;
webView.scrollView.showsHorizontalScrollIndicator = NO;
[self.webView mas_remakeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.bkgView.mas_top);
make.left.right.mas_equalTo(self.bkgView);
make.height.mas_equalTo(size.height);
}];
[self.bkgView mas_remakeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.mas_top);
make.height.mas_equalTo(size.height);
make.left.mas_equalTo(self.mas_left);
make.right.mas_equalTo(self.mas_right);
}];
}
2.加载:
//加载HTML字符串内容完成图文混编
[self.infoBkg.webView loadHTMLString:HTML内容 baseURL:[NSURL URLWithString:HTML里面省略的头]];