0

在uiwebivew中哪种方式加载网页更快

使用

将 NSData 加载到 UIWebView

或者

使用加载请求 URL?

4

2 回答 2

1

网络请求需要时间。尝试优化这种类型的代码几毫秒是没有意义的。编写最具可读性/可维护性的代码,它将为您提供更好的服务。

您可以将网页、脚本、css 和图像放入您的应用程序包中;获取指向它的 URL (file://...) 并使用它。在您的网页中,您可以使用 AJAX 提取一些动态数据等。

那将是更好的优化途径;但这一切都取决于您的情况。

如果您可以选择使用loadRequest,我会推荐它。让操作系统从您手中接过工作。

编辑:PS:UIWebView 往往会花时间来显示数据;即使不涉及网络。我经常在 IB 或 viewDidLoad 中将 webview 的 alpha 设置为 0;然后在内容准备好时将其淡入。

在您的webViewDidFinishLoad:方法中,添加以下内容:

if (0.0f == webview.alpha) {
    [UIView animateWithDuration:0.4f
                     animations:^{
                         webview.alpha = 1.0f;
                     }];
}
于 2013-02-01T02:53:52.663 回答
0

他们真的不是更快加载 Webview 的任何“技术”方式,但我建议您使用:

加载请求 URL

加载请求 URL 代码:

@interface WebViewController : UIViewController {

IBOutlet UIWebView *webView;
}

@property (nonatomic, retain) UIWebView *webView;

@end 

///////////////////////////////////////// ///////////////////////////////////////// ///////////////////////////////////////// ///////////////

- (void)viewDidLoad {

NSString *urlAddress = @"http://www.google.com";

//Create a URL object.
NSURL *url = [NSURL URLWithString:urlAddress];

//URL Request Object
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];

//Load the request in the UIWebView.
[webView loadRequest:requestObj];

} 
于 2013-02-01T02:46:38.223 回答