2016-09-26 79 views
-1

在我的应用程序中,我使用的是UIWebview。它有固定的高度和宽度。我需要在该UIWebview中加载html内容。在UIWebview中加载HTML

我用下面的代码

self.contentWebView.scalePageToFit = Yes; 
[self.contentWebView loadHTMLString:html baseURL:baseURL]; 

但我的问题是,如果其含量太小,用户不能看到它正确。他们需要放大它。有没有一种方法可以充分满足我的网页视图中的内容。

回答

0

首先,我设置了滚动视图,并在scrollView中设置了webView.I,根据iPhone,iPad宽度和高度设置内容大小。在下面的代码中,我提到了这个。我试过这个为我的项目。精细。

- (void)webViewDidFinishLoad:(UIWebView *)webView 
{ 

    CGFloat height = [[webview stringByEvaluatingJavaScriptFromString:@"document.height"] floatValue]; 
    CGFloat width = [[webview stringByEvaluatingJavaScriptFromString:@"document.width"] floatValue]; 
    CGRect frame = webview.frame; 
    frame.size.height = height; 
    frame.size.width = width; 
    webview.frame = frame; 

    CGRect screenBounds = [UIScreen mainScreen].bounds ; 
    CGFloat widthForIpad = CGRectGetWidth(screenBounds) ; 
    CGFloat heightForIpad = CGRectGetHeight(screenBounds) ; 
    NSLog(@"The iPad width is - %fl",widthForIpad); 
    NSLog(@"The iPad height is - %fl",heightForIpad); 

    CGFloat widthForIPhone = CGRectGetWidth(screenBounds) ; 
    CGFloat heightForIPhone = CGRectGetHeight(screenBounds) ; 
    NSLog(@"The iPad width is - %fl",widthForIPhone); 
    NSLog(@"The iPad height is - %fl",heightForIPhone); 

    if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) { 
     if ([[UIScreen mainScreen] bounds].size.height == 568) //iPhone 5s 
     scrollView.contentSize = CGSizeMake(320, height+your nedded height); 
     else if ([[UIScreen mainScreen] bounds].size.height == 667) ////iPhone 6,6s,7 
     scrollView.contentSize = CGSizeMake(375, height+your nedded height); 
     else if ([[UIScreen mainScreen] bounds].size.height == 736)//iPhone 6s plus,7 plus 
     scrollView.contentSize = CGSizeMake(414, height+your nedded height); 
     else{ 
     //iPhone 4s 
     scrollView.contentSize = CGSizeMake(320, height+your nedded height); 
     } 
    } 

    else{ 
     if ([[UIScreen mainScreen] bounds].size.height == 1024){ 
     scrollView.contentSize = CGSizeMake(768, height+your needed height); 
     } 
     else{ 
     scrollView.contentSize = CGSizeMake(1024, height+your needed 
     } 
    } 
    int fontSize = 80; 
    NSString *jsString = [[NSString alloc] initWithFormat:@"document.getElementsByTagName('body')[0].style.webkitTextSizeAdjust= '%d%%'", fontSize]; 
    [webview stringByEvaluatingJavaScriptFromString:jsString]; 
    NSString *jsWebViewFontFamilyString = [[NSString alloc] initWithFormat:@"document.getElementsByTagName('body')[0].style.fontFamily = 'Helvetica'"]; 
    [webview stringByEvaluatingJavaScriptFromString:jsWebViewFontFamilyString]; 
} 

如果你设置webView里面的scrollView,它完美的作品。