我有一個tableview,它由YNet縮略圖的單元格組成,這些Youtube縮略圖在AFNetworking的setImageWithURL方法的幫助下獲取。那麼,如何將這些單元格中的縮略圖重新用於其他視圖?在UIImageView中重用UIImageView對象通過「setImageWithURL」獲取的UIImageView對象
在此先感謝。
我有一個tableview,它由YNet縮略圖的單元格組成,這些Youtube縮略圖在AFNetworking的setImageWithURL方法的幫助下獲取。那麼,如何將這些單元格中的縮略圖重新用於其他視圖?在UIImageView中重用UIImageView對象通過「setImageWithURL」獲取的UIImageView對象
在此先感謝。
在UIImageView+AFNetworking
,一旦image
downloaded
有url
得到cached
使用AFImageCache
(NSCache)。這裏
訣竅是使用same url
來download
image
但它會not
齊齊download
但您提供cached
image
。
編輯: 看看這UIImageView+AFNetworking's setImageWithURLRequest:placeholderImage:success:failure:
UIImage *cachedImage = [[[self class] sharedImageCache] cachedImageForRequest:urlRequest];
if (cachedImage)
{
//provide cache image
}
else
{
//download new image from url
}
你可以從UIImageView
得到一個參考的圖像實例。
UIImage *imageToReuse = cell.imageView.image
看看UIImagView文檔。
一個更好的選擇,雖然會使用AFNetworking下載圖像,把它們放在緩存中,例如使用NSCache
,然後讓它們通過它。這對我來說似乎是一個更清潔的方法,然後從細胞中提取它們。這些鏈接在這方面可能是有用的:
嗯,是的。我在項目中使用了AFNetworking。這只是我忘了在原始問題中用代碼標記強調它,所以你可能錯過了它。我的錯。問題是,如果我使用上面的代碼,將不會獲得與從網絡中檢索到的圖像不同的圖像引用? – 2015-02-09 06:11:25
謝謝。這是我需要的。我會upvote並檢查這個答案。再次感謝。 – 2015-02-09 08:32:09