解決UITableview裏面滑動時重複下載,主線程卡頓問題

在UITablview裏面滑動的時候,返回cell的那個方法會不斷的被重複調用,致使數據屢次被下載,而且每次下載都須要加載網絡數據,耗時太多,卡頓
2個問題:
重複下載:每次滑動,重複調用
卡頓:每次調用都發送網絡請求,耗時
 
 
內存緩存:建立一個臨時字典用於保存數據,也就是作內存緩存(內存緩存在程序每次啓動的時候,都會從新下載
可是沙盒緩存:程序再次啓動不須要從新下載
 
  • documents:存放在documents裏面文件會被自動備份,咱們下載的文件不可以放在這裏,若是放在這裏,蘋果會拒絕咱們的應用上架
  • tmp:放在這個裏面的話,文件可能會隨時被刪除,也不能夠
  • cache:因此通常狀況下,咱們須要緩存內容,都須要放在cache裏面
 
可使用NeSSearchPathForDirectoriesInDomain 獲取到cache的路徑
NSCacheDirectories ,
用戶搜索區域內NSUserDomianMask ,YES表示:顯示全路徑
 
 
優化後:(在下載數據以前,先進行判斷,若是緩存裏面有,直接賦值,若是沒有再從新下載,下載以後順便存在緩存裏面)
好處:不會在重複屢次下載
相關文章
相關標籤/搜索