2013-03-08 24 views
1

我下載乘HTMLS並保存到本地爲在NSArray字符串。 然後我使用3 UIWebViews加載內容。用戶總是能看到一個UIWebView和2個UIWebViews使用加載背景:UIWebView的低載荷的時間與更有效的方式

[_firstWebView loadHTMLString:nextHtml.body baseURL:nil]; 

當用戶UIWebViews之間來回移動,我仍然可以看到1-2秒緩慢的加載時間,如果他在同樣的動作2 UIWebViews時間。我想到5甚至7 UIWebViews,但恐怕會嚴重影響內存使用。

另一種認爲我已經被作爲NSData本地保存的內容,然後用

[web loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:filePath]]]; 

加載它,但我不知道這會得到我的任何改進或會嗎?

另一個想法是什麼在我的應用程序(在屏幕上的動畫)的,所以也許減慢加載時間我在不同的線程應該loadHTMLString:nextHtml

謝謝

+2

你總是好去嘗試用,你不必問權限這裏。祝你好運! – 2013-03-08 05:49:05

回答

1

最近我做了一些關於在後臺加載內容到UIWebView的研究。我發現,即使成功的loadRequest也沒有效果,而webview是不可見的,並且不會作爲子視圖添加到某處。

但是,如果我做了一些訪問加載前查看,它開始出現在後臺加載的內容。

所以我第一隱藏視圖,然後加載內容在它和它表示到用戶之前使視圖再次可見:

在加載方法:

// make some access to view to reflect content changes 
self.webView.hidden = YES; 

[self.webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:someurl]]]; 

當用戶切換到網頁視圖:

// make view visible again 
self.webView.hidden = NO; 

這種方法適用於我。希望它也指向你正確的方向。