亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在UITableViewCell中延遲加載圖像

在UITableViewCell中延遲加載圖像

九州編程 2019-12-18 16:55:20
我的UITableView中有大約50個自定義單元格。我想在從URL獲取圖像的單元格中顯示圖像和標簽。我想延遲加載圖像,以便在加載圖像時UI不會凍結。我嘗試在單獨的線程中獲取圖像,但是每次單元格再次可見時,我都必須加載每個圖像(否則單元格的重用會顯示舊圖像)諸如Facebook之類的應用程序僅針對當前可見的單元格加載圖像,并且一旦加載圖像,便不會再次加載它們。有人可以告訴我如何重復這種行為。謝謝。編輯當用戶快速滾動時,嘗試在NSMutableDictionary對象中緩存圖像會產生問題。我僅在完全停止滾動并清除內存緩存警告時才獲取圖像。但是該應用程序始終會收到內存警告(由于要緩存的圖像大小),并在重新加載之前清除緩存。如果滾動非???,則會崩潰。歡迎其他任何建議
查看完整描述

3 回答

?
慕工程0101907

TA貢獻1887條經驗 獲得超5個贊

將圖像加載到后臺線程上仍然是一個好主意。如果您不想每次都重新加載它們,建議您設置一個NSMutableDictionary并將圖像存儲在其中。您可以使用一些唯一的標識符(例如行ID甚至是圖像的名稱)作為每個圖像的鍵。

加載單元格時,您將向NSMutableDictionary發送objectForKey:消息以檢索該特定單元格的圖像(基于其唯一鍵)。如果返回nil,則表示緩存中缺少該圖像,您需要背景圖像加載線程才能對其進行檢索。否則,您將獲取適當的圖像以供表格單元格顯示。出現內存警告時,您可以清除此圖像緩存,而不會產生不利影響(除了強制按需重新加載圖像外)。


查看完整回答
反對 回復 2019-12-18
  • 3 回答
  • 0 關注
  • 628 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號