1、imageNamed: UIImage的類方法 第一次讀取圖片的時候,先把這個圖片放到緩存中,下次再使用這個名字的圖片時,直接從緩存中讀取;如果緩存中不存在這個名字的圖像,則先把該圖片載入到緩存中,再返回該對象。如果我們需要短時間內頻繁的載入一些一次性的圖像,最好不要使用這種方法。 優點:方便快 ...
1、imageNamed:
1 UIImage *image = [UIImage imageNamed:@"1"];
UIImage的類方法
第一次讀取圖片的時候,先把這個圖片放到緩存中,下次再使用這個名字的圖片時,直接從緩存中讀取;如果緩存中不存在這個名字的圖像,則先把該圖片載入到緩存中,再返回該對象。如果我們需要短時間內頻繁的載入一些一次性的圖像,最好不要使用這種方法。
優點:方便快捷,只有第一次使用的時候稍慢,接下來再使用就會稍微快點;
缺點:如果在當前工程中只使用一次,就會浪費記憶體。
2、imageWithContentsOfFile:和initWithContentsOfFile:
1 // 獲取程式包中一個圖片資源的路徑 2 NSString *oldImagePath = [[NSBundle mainBundle] pathForResource:@"image" ofType:@"png"]; 3 // 根據路徑獲取圖片 4 UIImage *image1 = [UIImage imageWithContentsOfFile:oldImagePath]; // 類方法 5 UIImage *image2 = [[UIImage alloc] initWithContentsOfFile:oldImagePath]; // 對象方法
imageWithContentsOfFile: -- UIImage的類方法
intiWithContentsOfFile: -- UIImage的對象方法
每次都根據路徑去讀取圖片,不經過系統緩存,直接從文件系統中載入並返回。不會耗記憶體,如果載入的圖片在工程中只使用一次,應該選擇這個方法。當收到記憶體警告的時候,系統可能會將UIImage內部的存儲圖像的記憶體釋放,下一次需要的時候重新載入。