Iphone 如何防止UIWebView的延迟显示
我必须在表格前面加上一些“富文本”说明*;并认为将UIWebView添加到tableview的标题中会起作用。HTML是我的资源文件夹中的一个小文件,CSS是文件中的一个样式标记;所以这一切都很好,而且是独立的 问题是,视图在中转换;然后,在一个小的延迟之后,webview的内容出现了。效果是不和谐的,我不认为隐藏视图并在它准备好时将其淡入是更可取的 我正在使用下面的代码在我的Iphone 如何防止UIWebView的延迟显示,iphone,ios,uiwebview,Iphone,Ios,Uiwebview,我必须在表格前面加上一些“富文本”说明*;并认为将UIWebView添加到tableview的标题中会起作用。HTML是我的资源文件夹中的一个小文件,CSS是文件中的一个样式标记;所以这一切都很好,而且是独立的 问题是,视图在中转换;然后,在一个小的延迟之后,webview的内容出现了。效果是不和谐的,我不认为隐藏视图并在它准备好时将其淡入是更可取的 我正在使用下面的代码在我的viewDidLoad方法中创建视图 UIWebView * wv = [[UIWebView alloc] initW
viewDidLoad
方法中创建视图
UIWebView * wv = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, self.tableView.frame.size.width, HEADER_HEIGHT)];
[wv setBackgroundColor:[UIColor clearColor]];
[wv setOpaque:NO];
NSString *path = [[NSBundle mainBundle] pathForResource:@"HeaderMsg" ofType:@"html"];
assert(path != nil);
NSData *htmlData = [NSData dataWithContentsOfFile:path];
[wv loadData:htmlData MIMEType:@"text/html" textEncodingName:@"utf-8" baseURL:nil];
[self.tableView setTableHeaderView:wv];
[wv release];
我发现了两个丑陋的解决办法,但我希望有人有更好的解决办法;由于我的变通方法将代码弄得一团糟:
[vc
预加载WebViewWithDelegate:self]代码>
方法,该方法将使webview
将调用方用作委托。
然后调用方保留vc和
等待webview向其发送消息
webviewDidFinishLoad
方法,位于
它什么时候可以呈现视图
并发布vc
(*说明大多是简单的样式文本,带有一些要点(没有图像或过于激进的样式);但在没有网络视图的情况下,需要大约14个仔细对齐的UILabel视图来模拟这一点,并且可能会受到想要更改消息的客户的突发奇想的影响。)我将创建另一个独立的模型或控制器对象来创建和保留webview,希望在更高的级别上,以及在(可能在app init期间)使用可以显示webview的UI显示视图之前
将其视为动作游戏的预暂存资源,这样它们就不必在游戏循环期间加载,这是一种常见的设计模式。我将创建另一个独立的模型或控制器对象来创建和保留webview,希望在更高级别之前(可能在app init期间)使用可以显示webview的UI显示视图 将其视为动作游戏的预暂存资源,这样它们就不必在游戏循环期间加载,这是一种常见的设计模式。考虑使用此功能 考虑使用此
这是我的选择#2,以及代码当前的功能。将预加载延迟从“操作”中移到应用程序启动中是一个不错的选择。不幸的是,当我显示这个视图时;这是用户将看到的第一个视图-因此我无需将webview预加载移动到离使用它的视图更远的位置。我仍然希望有人会推荐一种更干净的解决方案,但我已经把文档翻了一遍,怀疑没有。我考虑过使用performSelector:withObject:afterDelay在初始化后约700毫秒显示视图。至少我没有代码来描述散布在各处的风景。如果明天没有更好的解决方案;我会接受你的答案。这是我的选择#2,以及代码当前的功能。将预加载延迟从“操作”中移到应用程序启动中是一个不错的选择。不幸的是,当我显示这个视图时;这是用户将看到的第一个视图-因此我无需将webview预加载移动到离使用它的视图更远的位置。我仍然希望有人会推荐一种更干净的解决方案,但我已经把文档翻了一遍,怀疑没有。我考虑过使用performSelector:withObject:afterDelay在初始化后约700毫秒显示视图。至少我没有代码来描述散布在各处的风景。如果明天没有更好的解决方案;我接受你的回答。