我想在我的iPhone應用程序中使用不同的圖像,具體取決於當前設備是iPhone 3G,iPhone 4還是iPad。我嘗試過獲取設備的屏幕分辨率(大小),但對於不同的iPhone,它總是會返回320 X 480。根據iOS設備類型的不同,我如何使用不同的圖像?
如何確定我正在運行哪種類型的設備,以便我可以提供正確的圖像?
我不想獲得iPhone操作系統版本。
我想在我的iPhone應用程序中使用不同的圖像,具體取決於當前設備是iPhone 3G,iPhone 4還是iPad。我嘗試過獲取設備的屏幕分辨率(大小),但對於不同的iPhone,它總是會返回320 X 480。根據iOS設備類型的不同,我如何使用不同的圖像?
如何確定我正在運行哪種類型的設備,以便我可以提供正確的圖像?
我不想獲得iPhone操作系統版本。
如果你想要這個信息的目的是爲你的決議選擇適當的圖形,那麼middaparka的答案就是你要找的。但是,如果您碰巧需要設備模型或解決方案信息用於不同的目的,那麼UIDevice和UIScreen可能就是您想要的。
NSString *myDeviceModel = [[UIDevice currentDevice] model];
CGRect myScreenSize = [[UIScreen mainScreen] bounds].size;
+1愛知道爲什麼這是downvoted - 這畢竟是「純」的答案。 – 2011-01-31 20:31:03
有最有可能沒有必要做你正在試圖做的,因爲iOS版已經內置加載圖像支撐位爲iPhone(視網膜和預視網膜分辨率)和iPad適當大小的東西。
閱讀Resource Programming Guide(特別是「在iOS中指定高分辨率圖像」和「iOS支持特定於設備的資源」部分)和iOS Application Programming Guide以獲取更多信息。
順便說一句,這兩個前置和後置視網膜的iPhone /莢內有320 X 480蘋果的點分辨率磅(分辨率無關),像素尺寸爲區分順水推舟的方式。
只是一個小小的更正 - iPad沒有320x480的點分辨率,這只是更小的設備。 iPad的點分辨率爲1024x768。 – 2011-01-31 20:28:16
什麼毛病`@ 2x`命名方案對於高分辨率的圖像? – BoltClock 2011-01-31 20:03:51