0

我注意到在我的 webView 中,我在发出请求时设置了缓存策略,在 viewDidLoad 中,

NSURLRequest *request = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:10];

缓存将仅在第一次运行时,当我单击网页中的另一个按钮继续执行后续页面时,webView 会忽略缓存策略,使其仅在网页的第一页上加载速度更快。后续页面加载非常缓慢。

我该如何解决这个问题:使所有后续页面的加载速度与 webView 中第一个加载的页面一样快?

4

1 回答 1

0

嗯,我想我现在已经找到了解决方案并回答了我自己的问题。好像可以放

NSURLRequest *request = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:120]; ]

在 webView 的委托内

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType

如果 navigationType 等于UIWebViewNavigationTypeLinkClicked,则使用允许我设置缓存策略的方法发出新请求。

于 2013-02-22T02:45:16.633 回答