首先看一張比較簡單明瞭的 iPhone 6 與 iPhone 6 Plus 對比圖,來自 PaintCode 的《The Ultimate Guide To iPhone Resolutions》:bash
iPhone 6 Plus 要比 iPhone 6 的屏幕寬 39 Point,分辨率更是高出很多,由於 iPhone 6 Plus 是按 3x 來渲染的,也就是說 1point=3pixes。用如下代碼測試:app
1
2
3
4
5
|
UIScreen *mainScreen = [UIScreen mainScreen];
// 須要注意 coordinateSpace 屬性 iOS 8 以上才支持
NSLog(@
"Screen bounds: %@, Screen resolution: %@, scale: %f, nativeScale: %f"
,
NSStringFromCGRect(mainScreen.bounds), mainScreen.coordinateSpace, mainScreen.scale, mainScreen.nativeScale);
|
用 iPhone 6 Plus 測試輸出結果爲:iphone
1
|
Screen bounds: {{0, 0}, {375, 667}}, Screen resolution: <UIScreen: 0x14f601fe0; bounds = {{0, 0}, {375, 667}}; mode = <UIScreenMode: 0x1780321c0; size = 1125.000000 x 2001.000000>>, scale: 3.000000, nativeScale: 2.880000
|
從上面的圖片看知道它們有一個所謂的」Display Zoom」縮放模式,但不知道如何啓用此模式。最初覺得是在設置->通用->輔助功能裏能夠調整,只有一個縮放和更大字體之類的比較接近,但都不是。今天在顯示與亮度中終於找到答案了,以下圖:ide
設置爲標準,再運行結果就正常啦:測試
1
|
Screen bounds: {{0, 0}, {414, 736}}, Screen resolution: <UIScreen: 0x146603a60; bounds = {{0, 0}, {414, 736}}; mode = <UIScreenMode: 0x178032da0; size = 1242.000000 x 2208.000000>>, scale: 3.000000, nativeScale: 2.608696
|
從輸出數據中能夠看出,即便 6 Plus 縮放到375模式,它加載的依然是三倍的圖片資源。另一點,標準模式下 6 Plus 才支持橫屏模式,包括主屏幕。字體
文章出處:http://magicalboy.com/iphone-6-plus-screen-width-414-or-375/ui
圖片出處:http://www.paintcodeapp.com/news/ultimate-guide-to-iphone-resolutionsspa