iOS 获取各种机型的 导航栏、状态栏、TabBar、安全区域高度
导航栏
导航栏高度固定都是 44pt。
状态栏和安全区域
iOS 控制器不管在竖屏时状态栏是否显示,在横屏时系统都是隐藏状态栏的,各家视频类 App 都是在横屏时添加自定义的状态栏,基本就是显示:时间+电量
安全区域的概念是刘海屏出来后才开始有的,目前所有 iPhone 机型的状态栏高度不固定,就算同样是刘海屏,状态栏高度也可能不一样;状态栏高度和安全区域顶部的高度也可能不一致。具体见下表:
手机机型 | 屏幕尺寸(inch) | 屏幕宽高(pt) | 像素分辦率(px) | 屏幕比例 | 倍图 | 状态栏高度 | 安全区域(横/竖屏) |
---|---|---|---|---|---|---|---|
iPhone 15 Pro Max/iPhone 15 Plus/iPhone 14 Pro Max | 6.7 | 932 x 430 | 2796 × 1290 | 19.5: 9 | @3x | 54 | {59, 0, 34, 0} / {0, 59, 21, 59} |
iPhone 15 Pro/iPhone 15/iPhone 14 Pro | 6.1 | 852 x 393 | 2556 x 1179 | 19.5: 9 | @3x | 54 | {59, 0, 34, 0} / {0, 59, 21, 59} |
iPhone 14 Plus/13 Pro Max/12 Pro Max | 6.7 | 926 x 428 | 2778 x 1284 | 19.5: 9 | @3x | 47 | {47, 0, 34, 0} / {0, 47, 21, 47} |
iPhone 14/13 Pro/13/12 Pro/12 | 6.1 | 844 x 390 | 2532 x 1170 | 19.5: 9 | @3x | 47 | {47, 0, 34, 0} / {0, 47, 21, 47} |
iPhone 13 mini/12 mini | 5.4 | 812 × 375 | 2340 x 1080 | 19.5:9 | @3x | 50 | {50, 0, 34, 0} / {0, 50, 21, 50} |
iPhone 11 Pro Max/Xs Max | 6.7 | 896 x 414 | 2688 x 1242 | 19.5: 9 | @3x | 44 | {44, 0, 34, 0} / {0, 44, 21, 44} |
iPhone 11/XR | 6.1 | 896 × 414 | 2688 x 1242 | 19.5: 9 | @2x | 48 | {48, 0, 34, 0} / {0, 48, 21, 48} |
iPhone 11 Pro/Xs/X | 5.8 | 812 x 375 | 2436 x 1125 | 19.5: 9 | @3x | 44 | {44, 0, 34, 0} / {0, 44, 21, 44} |
iPhone 8 Plus/7 Plus/6S Plus/6 Plus | 5.5 | 736 × 414 | 2208 x 1242 | 16: 9 | @3x | 20 | - |
iPhone SE 3/SE 2/8/7/6S/6 | 4.7 | 667 × 375 | 1334 x 750 | 16: 9 | @2x | 20 | - |
iPhone SE/5S/5C/5 | 4 | 568 x 320 | 1136 x 640 | 16: 9 | @2x | 20 | - |
iPhone 4S/4 | 3.5 | 480 x 320 | 960 x 640 | 3:2 | @2x | 20 | - |
- 竖屏时,安全区域的 top 不固定;left 和 right 都是 0;bottom 固定都是 34
- 横屏时,安全区域的 top 固定为 0;left 和 right 都等于同手机竖屏时的 top;bottom 固定都是 21
本文由作者按照 CC BY 4.0 进行授权