2011-09-29 84 views
0

我正在從uitableview的web下載圖像,並且希望保存在文檔目錄中。我正在同步下載。我下載並保存在文檔目錄中,但是當我每次滾動可用的圖像時,我只想保存下載圖像的時間。我該怎麼辦?任何人都可以提供一些代碼嗎?任何幫助將不勝感激。將圖像保存到文檔目錄中

回答

0

你應該從不使用同步下載。它會阻止你的用戶界面,使你的UITableView滾動滯後,讓用戶認爲你的應用程序已經凍結...非常糟糕的主意。

而應該始終使用使用NSURLConnectionloadRequest:方法和自己實現委託方法異步下載(甚至可能是奉獻一類來管理下載,因爲每個人都這樣做)從蘋果文檔

See the LazyTableImages示例代碼,它解釋如何以異步方式加載圖像以將其顯示在TableView中,按需加載圖像,並避免凍結UI。

決不做的UITableView像tableView:cellForRowAtIndexPath:委託方法阻塞操作(我希望你用UITableViewCells的重用機制正確太,減少細胞的分配。請參閱有關這一點上的TableView編程指南)

使用NSURLConnection及其委託方法實現了異步下載後,將其保存爲connectionDidFinishLoading:委託方法中的文檔文件夾中的圖像的代碼的小菜一碟(因此僅在下載時才保存它們)

+0

謝謝阿里我已經解決了應用程序凍結問題的圖像成功保存在目錄中,但我的問題是,每次我滾動表格相同的圖像被保存一次又一次。 –

+0

按照我的建議,通過移動NSURLConnection委託方法中保存圖像的代碼,僅在下載第一次時保存它們(希望每次不重新下載圖像?!) – AliSoftware

+0

@suhail您需要設置各種緩存。快速輕鬆地製作圖像網絡請求的字典,並在發送字典中的任何請求檢查密鑰之前。如果它只是從文件加載文件。您可能需要一個更持久的緩存解決方案,具體取決於您期望看到的圖片的數量,但對於簡單的情況這適用。 – EricLeaf

0

保存我在didConnectionFinishLoading方法中。您也可以使用NSNotification來了解下載何時完成。 希望這些信息很有用。

相關問題