我有一個性能問題,如果我加載一個JPG(是的,我不能提供任何PNG文件格式的應用程序)圖像從[UIImage imageWithContentsOfFile: ]
磁盤,存儲UIImage在全局NSCache中使用緩存圖像[UITableViewCell drawRect: ]
。這種方法比用戶[UIImage imagedNamed:]
慢得多。UIImage + NSCache與[UIImage imageNamed:]
如果已經分析用儀器的性能「時間檔案」,正如你可以在第一個圖片中看到的JPEG在[DBArtistTableViewCell drawRect:]
總是解碼。 在第二張圖片[UIImage imageNamed:]
解決方案中,JPG不會解壓。
NSCache
+ UIImage
解決方案:
[UIImage imageNamed]
解決方案
簡短的問題是:爲什麼是UIImage
+ NSCache
解決方案比[UIImage imageNamed:]
解決方案慢,什麼是[UIImage imageNamed:]
法魔(是的我知道緩存,但其他的魔術是什麼)?
THX的幫助。
有沒有辦法通過自己解壓從[UIImage的imageWithContentsOfFile]的UIImage的? – CarlJ 2012-02-17 11:59:46
即使世界在這個問題上的意見,可以幫助您進行一些討論:http://stackoverflow.com/questions/1815476/cgimage-uiimage-lazily-loading-on-ui-thread-causes-stutter – ikuramedia 2012-02-18 03:55:17