UIWebView 适应屏幕

1.由于webView是UIscrollview的子类 可以使用scrollview的zoom属性

- (void)webViewDidFinishLoad:(UIWebView *)theWebView

{

  CGSize contentSize = theWebView.scrollView.contentSize;

  CGSize viewSize = self.view.bounds.size;

  float rw = viewSize.width / contentSize.width;

  theWebView.scrollView.minimumZoomScale = rw;

  theWebView.scrollView.maximumZoomScale = rw;

  theWebView.scrollView.zoomScale = rw; 

}

2.可以修改js的meta标签 把html的宽度设置成webview的宽度

适用于网页内容:

-(void)webViewDidFinishLoad:(UIWebView *)webView

{

 NSString *meta = [NSStringstringWithFormat:@"document.getElementsByName(\"viewport\")[0].content = \"width=%f, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no\"", webView.frame.size.width];

[webView stringByEvaluatingJavaScriptFromString:meta];

}

备注:

如果文件中含有图片,设置自适应屏幕之后,会出现图片不能充满整个webview的情况。此时可以用一个不建议使用的恶心方法:

//    webView.scalesPageToFit=YES;

introduction=[introduction stringByReplacingOccurrencesOfString:@"

[webView loadHTMLString:introduction baseURL:nil];

3.设置自动缩放

[webView setScalesPageToFit:YES]

你可能感兴趣的:(UIWebView 适应屏幕)