UIWebView's property scalesPageToFit = YES not working correctly on larger images

iMemon picture iMemon · May 22, 2013 · Viewed 13.1k times · Source

In an iphone app i have a webview in which i want to preview some image downloaded from internet, my problem is that the some images are not viewed as to fit in the frame of webview, but most do. I think this is due to the fact that those images are too large. Am i doing something wrong? Please help

What i want is simply loading image in webview to fit the frame of webview. You can provide me some other code, but need to be regarding webview not imageview.

Here is the code i am using.

self.documentData = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://www.folio3.com/corp/wp-content/uploads/2013/02/Entrance_A-3.jpg"]];
self.webView.scalesPageToFit = YES;
[self.webView loadData:self.documentData MIMEType:@"image/jpeg" textEncodingName:@"utf-8" baseURL:nil];

Plus here is the screenshot of output (clearly shows scroll indicators i-e image is not fit in webview's frame)Output Screenshot

Answer

Paras Joshi picture Paras Joshi · May 22, 2013

First Check and set frame of UIWebView in viewDidLoad: like bellow..

webView.frame = self.view.frame;

after use this Delegate method and set scalesPageToFit property like bellow..

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
    webView.scalesPageToFit = YES;//set here
    return YES;
}