2010-07-05 162 views
0

我需要一個UIWebView來顯示一個html頁面。如果互聯網不可用,它將顯示上次下載的版本。如果有互聯網,那麼它下載最新版本並替換並顯示剛剛下載的版本。我怎樣才能做到這一點?謝謝iphone應用程序UIWebView緩存數據

回答

0

你可以實現你的webViews委託webViewDidFinishLoad:方法抓取請求並再次加載。由於它剛剛完成加載,因此我們可以假設它已被緩存並通過同步網絡加載。存儲結果。當網絡不可用時,使用loadData:MIMEType:textEncodingName:baseURL:將該結果加載到webView中。當網絡可用時,agin只需撥打loadRequest:即可刷新。

另一種選擇是使用stringByEvaluatingJavaScriptFromString:周圍一個javascript:

document.getElementsByTagName('html')[0].outerHTML; 

和插入與loadHTMLString:baseURL:

但是這兩個內容僅適用於純HTML工作沒有圖像,聲音等

當網絡不可用時,第三種選擇是使用NSURLRequestReturnCacheDataDontLoad。見NSURLRequest

你migth也看看NSURLCache

相關問題