開發相容 iOS retina 的程式,我們需要做什嗎?

來源:互聯網
上載者:User

1、 首先明確:

iPhone 3G/3GS 螢幕像素解析度是   320×480 ;

iPhone4、iPod Touch4 螢幕像素解析度 640×960。

2、為了相容 iOS 4.0 之前的程式也能在 iOS 4 上運行,蘋果設計了一個邏輯解析度單位point ,在
iPhone3 上 1個 Point 相當於 1個pixel ; 而 iPhone4 上1個 point 就相當於4個 pixel;因此所有的iPhone、iPod Touch 裝置的 Point 解析度都是 320×480 ,也就是邏輯解析度都一致,保證了App不需要修改也能正常的在高像素解析度上運行,只是原來App中的圖片會被拉升後顯示,影響美觀,沒有發揮retina的優勢。

3、iOS App設計和開發人員要做什嗎?

1)App 的表徵圖設計,發布到Store的App必須同時提供高清Size的App Icon(在原來基礎上都要對應提供一份高清版本),參考Apple官方文檔。

2) 代碼中引用的靜態UI 圖片素材,也是提供兩份,一份低像素解析度,一份高解析度使用。

比如:原來App素材包有個 demo.png ,那麼 App bundle中就必須再提供一個兩倍size的 demo.png , 並且檔案命名為 demo@2x.png 後添加到項目工程中;

在代碼中仍然這樣寫 [UIImage imageNamed:@"demo.png"] 即可, 無需修改代碼,iOS系統可以自動對應不同螢幕取不同size的影像檔。

3) 如果App運行中從網路非同步擷取圖片進行顯示,或遊戲App中動態產生圖片後顯示,需加上代碼判斷不同螢幕裝置來擷取/產生不同size圖片。

if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)] && [[UIScreen mainScreen] scale] == 2){

//retina 或 ipad上啟用2x顯示iPhoneApp

//擷取高清size圖片

}

else {

//擷取低清size圖片

}

轉自:http://my.oschina.net/yongbin45/blog/69545

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.