iPhone X系列屏幕相關(guān)信息:
設(shè)備 | 屏幕尺寸 | 點(diǎn)分辨率pt | 屏幕比例scale | 像素分辨率px |
---|---|---|---|---|
iPhone X & iPhone XS | 5.8 | 375 x 812 | @3x | 1125 x 2436 |
iPhoneXR | 6.1 | 414 x 896 | @2x | 828 x 1792 |
iPhone XS Max | 6.5 | 414 x 896 | @3x | 1242 x2688 |
1.啟動(dòng)圖適配:
iPhone XR:828px x 1792px
iPhone XS Max: 1242px x 2688px
2.判斷iPhone X系列參考方法:
- (BOOL)isIPhoneXSeries {
BOOL iPhoneXSeries = NO;
if (UIDevice.currentDevice.userInterfaceIdiom != UIUserInterfaceIdiomPhone) {
return iPhoneXSeries;
}
if (@available(iOS 11.0, *)) {
UIWindow *mainWindow = [[[UIApplication sharedApplication] delegate] window];
if (mainWindow.safeAreaInsets.bottom > 0.0) {
iPhoneXSeries = YES;
}
}
return iPhoneXSeries;
}
3.iPhone X系列手機(jī)設(shè)備型號(hào)判斷:
參考設(shè)備型號(hào)
if ([platform isEqualToString:@"iPhone10,3"] || [platform isEqualToString:@"iPhone10,6"]) return @"iPhone X";
if ([platform isEqualToString:@"iPhone11,8"]) return @"iPhone XR";
if ([platform isEqualToString:@"iPhone11,2"]) return @"iPhone XS";
if ([platform isEqualToString:@"iPhone11,4"] || [platform isEqualToString:@"iPhone11,6"]) return @"iPhone XS Max";
4.Xcode10升級(jí)
google
//豎屏狀態(tài)欄高度
#define Portrait_Status_SafeArea_Height (kDeviceInfo.isiPhoneXSeries ? 44 : 20)
//豎屏底部不帶tabbar安全區(qū)域高度
#define Portrait_Bottom_SafeArea_Height (kDeviceInfo.isiPhoneXSeries ? 34 : 0)
//豎屏底部帶tabbar時(shí)安全區(qū)域高度
#define Portrait_Tabbar_SafeArea_Height (kDeviceInfo.isiPhoneXSeries ? (49 + 34) : 49)
//橫屏底部安全區(qū)域的高度
#define Landscal_Bottom_SafeArea_Height (kDeviceInfo.isiPhoneXSeries ? 21 : 0)
//橫屏左右安全區(qū)域的寬度
#define Landscal_LeftRight_SafeArea_Width (kDeviceInfo.isiPhoneXSeries ? 44 : 49)