简体   繁体   中英

Black bar appearing in UIWebview when device orientation changes

I have a UIWebView that I am loading onto another view, everthing looks fine in portrait or landscape when rotating, however when I am in portrait and I zoom in slightly with pinch or double tap when I rotate from portrait to landscape the view dosnt fill completely with the uiwebview, there are about 10pxls on the right that turn black as outlined in this screen shot.

在此输入图像描述

if you look carefully you can see the outline of the scroll indicator in the black, which segests this is part of the uiwebview?? if so then why dose it turn black in this area.

Also heres another screen shot of the webview scrolled up abit so you can see its part of the uiwebview...

在此输入图像描述

This is how I am adding the view onto the detail view.

- (void)viewdidload
//..

//Load in FirstView
    firstView = [[FirstMainViewController alloc] init];
    firstView.view.frame = CGRectMake(0.0, 0.0, firstView.view.bounds.size.width, firstView.view.bounds.size.height);

    firstView.view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;

    firstView.view.backgroundColor = [UIColor whiteColor];

    [self.view insertSubview:firstView.view belowSubview:actionTabBar]; 

//..

Try to set the background of the webView transparent (clearColor) and set it's opaque property to FALSE. Then make the background white in your html or simply have the view beneath the webView white.

I had the same problem, and simply setting opaque to NO fixed it. Didn't even have to change the background color, it works fine with the background color set to white.

I put in the line...

webView.scrollView.backgroundColor = UIColor.whiteColor()

webView is my @IBOutlet weak var webView: UIWebView!

Turn off WebKitDiskImageCacheEnabled and the black border goes away :
In applicationDidFinishLaunchingWithOptions add the following lines :

[[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"WebKitDiskImageCacheEnabled"];
[[NSUserDefaults standardUserDefaults] synchronize];

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM