0

webView で、viewDidLoad でリクエストを行うときにキャッシュ ポリシーを設定したことに気付きました。

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

キャッシュは初めて実行され、Web ページの別のボタンをクリックして後続のページに進むと、webView はキャッシュ ポリシーを無視し、Web ページの最初のページでのみ読み込みを高速化します。後続のページの読み込みが非常に遅くなります。

この問題を解決するにはどうすればよいですか: 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 に答える