32

UIWebViewバンドルされた HTML ファイルを表示して、「About」画面を表示するために使用します。私のアプリのビュー階層は次のとおりです: UITabBarController// .UIViewControllerUIWebView

問題は、HTML ページの背景が暗く、タブが初めてタップされたときに、Web ビューが表示される前に白い背景が短時間表示されることです。の背景色を設定してみましたUIWebViewが、問題は解決しません。viewDidLoadまたはでコンテンツを読み込むと、問題が発生しますviewWillAppear

4

4 に答える 4

88

迅速:

webView.isOpaque = false
webView.backgroundColor = UIColor.clear

目的 C:

webView.opaque = NO;
webView.backgroundColor = [UIColor clearColor];
于 2013-03-27T21:56:05.320 に答える
10

// index.html を読み込む

NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"index" ofType:@"html" inDirectory:@"www"]];
self.webview.delegate = self;

self.webview.alpha = 0; // flicker fix 

[self.webview loadRequest:[NSURLRequest requestWithURL:url]];

読み込み後にこれをデリゲートに追加します

// flicker fix

- (void)webViewDidFinishLoad:(UIWebView *)webView  
{
    [UIView beginAnimations:nil context:nil];

    [UIView setAnimationDuration:0.30];

    self.webview.alpha = 1;

    [UIView commitAnimations];

}
于 2014-04-22T12:17:51.157 に答える
3

私も同じ問題に遭遇しました。私が見つけた解決策は次のとおりです。

-(void)viewDidLoad {
  [super viewDidLoad];

  [_webView setOpaque:NO];
  _webView.backgroundColor = [UIColor clearColor];
  self.webView.hidden = YES;
}

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

 //...........................

 self.webView.hidden = NO;
}
于 2016-08-06T10:54:25.920 に答える