Да, кажется, установка свойства backgroundColor не влияет на UIWebView.
У меня нет удовлетворительного решения, только обходной путь, который вы можете рассмотреть.
- Сначала измените цвет фона, установив исходную пустую страницу HTML
- После загрузки вы загружаете свой основной URL (например, http://www.apple.com)
Если вы не ждете загрузки начальной HTML-страницы, вы можете не увидеть исходный фон во время загрузки основного URL-адреса. Поэтому вам нужно использовать метод webViewDidFinishLoad: UIWebViewDelegate :. Вы можете реализовать этот метод в своем классе Web_ViewViewController и настроить свой Web_ViewViewController в соответствии с протоколом UIWebViewDelegate. Первоначально, до тех пор, пока не загрузится четвёртая HTML-страница, по-прежнему мигает белый фон. Не уверен, как от этого избавиться. Ниже приведен образец:
- (void)viewDidLoad
{
[web loadHTMLString: @"<html><body bgcolor=\"#0000FF\"></body></html>" baseURL: nil];
web.delegate = self;
}
- (void)webViewDidFinishLoad:(UIWebView *)webView
{
static BOOL loadedMainURLAlready = NO;
if (!loadedMainURLAlready)
{
NSURL *clUrl = [NSURL URLWithString:@"http://apple.com"];
NSURLRequest *req = [NSURLRequest requestWithURL:clUrl];
[webView loadRequest:req];
loadedMainURLAlready = YES;
}
}