当推送包含UIView>的新viewController时,我有这种奇怪的(短暂的)闪烁。 UIWebView中。
在包含UIWebView的controller.m中,我为webView设置了这个代码:
//EXAMPLE 1
NSString *path = [[NSBundle mainBundle] bundlePath];
NSURL *baseURL = [NSURL fileURLWithPath:path];
NSString htmlData = [NSString stringWithFormat:@"<html><head><style type=\"text/css\"> { margin:0; padding:0; }body { background-color:#c6c6c6; width: 320px; font-family: Helvetica; font-size:13px; line-height: 18px; color:#404a52; } #someOtherStyles...</style></head><body><div id=\"mededelingenDetailViewHeader\"><h1>%@</h1><p class=\"date\">%@</p><p class=\"author\">%@</p></div><div id=\"mededelingenDetailViewContent\"><p>%@</p></div><!-- mededelingenContent --></body></html>", titleString, dateString, authorString, filteredDescription ];
[webView loadHTMLString:htmlData baseURL:baseURL];
使用此代码,将此控制器推到窗口时会出现闪烁现象。但是,如果我将htmlData更改为更简单的代码,例如下面的代码,而不是例如css闪烁突然消失了。
//EXAMPLE 2
NSString *htmlData = [NSString stringWithFormat:@"<html><head></head><body><h1>Some Header!</h1><p>Some text</p></body></html>"];
那么有没有办法在我的NSBundle中加载.html文件并将NSString分配给某些HTML内容,就像我在示例1中使用htmlData一样?或者有更好的方法吗?
THX!
答案 0 :(得分:0)
是否从viewDidAppear调用[webView loadHTMLString:htmlData baseURL:baseURL];
?如果是这样,那就解释了闪烁:它是在用户观看时加载HTML。将该调用移至viewDidLoad并查看是否解决了该问题。