UIWebView加载过程中,在页面没有加载完毕前,会显示一片空白。为解决这个问题,方法如下:

方法1、让UIWebView背景透明。

webView.backgroundColor = [UIColor clearColor];webView.opaque = NO;[webView setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"webbg.png"]]];
登录后复制


方法2:

先将webView的frame设为0, 在页面加载完成后再将frame设为原来大小.


方法3:

在viewDidLoad中,在WebView上面覆盖一个背景视图。

    self.webView=[[[UIWebView alloc]initWithFrame:self.view.bounds]autorelease];    [self.webView loadRequest:request];    [self.view addSubview:self.webView];        UIImageView *imageView = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"gatewaybg.png"]];    imageView.frame = CGRectMake(0, 0, [UIScreen mainScreen].bounds.size.width, [UIScreen mainScreen].bounds.size.height);    [self.view addSubview:imageView];
登录后复制

然后在WebView加载完成后把视图放到最上层或移除背景视图。
- (void)webViewDidFinishLoad:(UIWebView *)webView{    // WebView放到最上层    [self.view bringSubviewToFront:self.webView];    // 或者可以把背景图移除    [self.webView removeFromSuperview];}
登录后复制


09-09 13:35