当使用UIWebView重载数据时UITableView闪烁
嗨!我正在使用UITableView和UITableViewCell。 UITableViewCell里面有一个UIWebView(因为我使用实体,粗体文本,ecc ...)。当使用UIWebView重载数据时UITableView闪烁
web视图装入该代码:
UIWebView *testoLabel2 = (UIWebView*)[cell viewWithTag:3];
NSString *html = [NSString stringWithFormat:@"<html><font size=2>%@</font></body></html>", sottotitolo];
testoLabel2.opaque = NO;
testoLabel2.backgroundColor = [UIColor clearColor];
[testoLabel2 loadHTMLString:html baseURL:nil];
什么问题? ,当我需要重新加载数据(例如时deviceOrientation变更后)使用
[my_table reloadData];
所有的web视图眨眼! 只需一秒钟,但他们眨眼!这是一个非常丑陋的效果!
你知道为什么吗? 谢谢!
编辑:此外,如果我向下滚动tableview,当我向上滚动webview,加载之前是白色的!但只是一会儿,他们加载文本后!
不确定原因,但最好将单元格中的所有视图背景都设置为纯色。 Flash可以是渲染它的背景的单元格,然后是网页视图。如果你将webview背景设置为你想要的颜色并且不透明,那么这不应该发生。祝你好运!
不,不幸的是,删除'testoLabel2.opaque = NO;'和'testoLabel2.backgroundColor = [UIColor clearColor];'没有任何改变! – JAA 2011-04-14 20:38:30
好的,这可能没有解决你的问题,但它仍然是正确的事情做表视图性能。 – XJones 2011-04-14 20:43:41
对此的另一个想法是,你提到在设备方向改变时调用'reloadData'。你不应该这样做。您应该只在_data_实际更改时重新加载数据。如果您只是将相同的内容加载到Web视图中,则会强制Web视图在定位动画发生时加载和呈现它自己。 – XJones 2011-04-14 20:53:09
UIWebView是可滚动的吗? – 2011-04-14 20:31:34
这是因为webViews loadHtmlString异步执行。我遇到了同样的问题,我发现的唯一解决方案是使用接受html的richText并将其替换为webView。 – aryaxt 2011-10-20 15:46:11