我需要在多個UIImageView中的應用程序中使用可伸縮UIImage數百次。每次我需要將它添加到UIImageView中時,是否可以在全局範圍內重用相同的可伸縮UIImage,而不必在內存中重新創建它們?使用可伸縮UIImage時的最佳性能
我知道[UIImage imageNamed:]緩存圖像以獲得更好的性能,但這不能用於可伸縮圖像!
感謝,
邁克
我需要在多個UIImageView中的應用程序中使用可伸縮UIImage數百次。每次我需要將它添加到UIImageView中時,是否可以在全局範圍內重用相同的可伸縮UIImage,而不必在內存中重新創建它們?使用可伸縮UIImage時的最佳性能
我知道[UIImage imageNamed:]緩存圖像以獲得更好的性能,但這不能用於可伸縮圖像!
感謝,
邁克
哦,絕對的,你應該總是保存你的圖像一次,然後每次你想要繪製它時調用相同的圖像。通常對於具有大量圖像的項目,我有一個單獨的SpriteManager類,其中包含一個充滿精靈的NSDictionary。然後我可以通過文件名引用每一個。這樣每張圖片只加載一次,速度明顯更快。
絕對是絕大多數這樣做的有效方法雖然只是使用OpenGL ES。如果您已經繪製了數百張圖片,我絕對建議您這樣做。
肯定:重用你的形象。你把它存儲在一個全局變量中嗎?確保你的圖像(或者像你的應用程序一樣放在一些全局類的保留屬性中),因爲它可能是AutoReleased。
感謝您的幫助,我接受了第一個答覆作爲答案,因爲它是第一個,你不能除了多個答案! – 2009-09-01 16:49:52