2010-09-03 202 views
1

在iOS3和iOS4上顯示圖像的最佳模式是什麼?同時支持高分辨率和低分辨率圖像

例如,這裏有一個自定義活動的動畫代碼:

activityImageView.animationImages = [NSArray arrayWithObjects: 
[UIImage imageNamed:@"s01"], 
[UIImage imageNamed:@"s02"], 
[UIImage imageNamed:@"s03"], 
[UIImage imageNamed:@"s04"], 
[UIImage imageNamed:@"s05"], 
nil]; 

在運行iOS4的,如預期的圖像加載低分辨率和高分辨率的設備。在iOS3上無法找到圖像,因爲.png擴展名被視爲丟失。

什麼是正確的方式來處理這種情況?我是否需要在整個代碼中拋出hacky條件,還是有更清晰的方法?

是從馬特·加拉格爾的文章一個好方法什麼?
http://cocoawithlove.com/2010/07/tips-tricks-for-conditional-ios3-ios32.html

回答

1

即使您使用文件擴展名,您仍然會在iOS4中獲得自動「@ 2x」加載行爲,因此[UIImage imageNamed:@"so1.png"]沒問題(如果您在Retina顯示器上運行,它會找到「[email protected]」 OS 4)加上它向後兼容3,在那裏它總是會找到文件的低分辨率版本。

0

請參閱「將圖像載入應用程序」部分here