因为iphoneXS的尺寸和X一样,就UI上是不需要适配的。
一、启动图(参考图1)
1、肯定是更新macOS系统和Xcode10.0
2、点击启动图后不会显示XR和XMax的,在右侧栏的属性点击勾选iOS8.0 and Later就有了
3、图的大小分别为iPhone XR:828px x 1792px,iPhone XS Max: 1242px x 2688px

二、设备的宏定义
这个我就直接贴代码,看官们将就着看
#pragma mark - 屏幕尺寸
#define SCREEN_SIZE [UIScreen mainScreen].bounds.size
#define SCREEN_WIDTH SCREEN_SIZE.width
#define SCREEN_HEIGHT SCREEN_SIZE.height
#define SCREEN_BOUNDS [UIScreen mainScreen].bounds
#pragma mark - 设备(屏幕)类型
#define IS_IPHONE4 ([UIScreen mainScreen].bounds.size.width == 320.0f && [UIScreen mainScreen].bounds.size.height == 480.0f) // 320 * 480
#define IS_IPHONE5 ([UIScreen mainScreen].bounds.size.width == 320.0f && [UIScreen mainScreen].bounds.size.height == 568.0f) // 320 * 568
#define IS_IPHONE6 ([UIScreen mainScreen].bounds.size.width == 375.0f && [UIScreen mainScreen].bounds.size.height == 667.0f) // 375 * 667
#define IS_IPHONE6P ([UIScreen mainScreen].bounds.size.width == 414.0f && [UIScreen mainScreen].bounds.size.height == 736.0f) // 414 * 736
#define IS_IPHONEX ([UIScreen mainScreen].bounds.size.width == 375.0f && [UIScreen mainScreen].bounds.size.height == 812.0f)
#define IS_IPHONEXS ([UIScreen mainScreen].bounds.size.width == 375.0f && [UIScreen mainScreen].bounds.size.height == 812.0f)
#define IS_IPHONEXR ([UIScreen mainScreen].bounds.size.width == 414.0f && [UIScreen mainScreen].bounds.size.height == 896.0f)
#define IS_IPHONEXMAX ([UIScreen mainScreen].bounds.size.width == 414.0f && [UIScreen mainScreen].bounds.size.height == 896.0f)
#define IS_IPHONEX_ALL (IS_IPHONEX == YES || IS_IPHONEXS == YES || IS_IPHONEXR == YES || IS_IPHONEXMAX == YES)
#define IS_IPad [[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad ? YES : NO
#pragma mark - 常用控件高度
//iPhoneX相对其他设备的上下间隙高度
#define X_TOPSPACE (IS_IPHONEX_ALL ? 24.0f : 0.0)
#define X_BOTTOMSPACE (IS_IPHONEX_ALL ? 34.0f : 0.0)
#define STATUSBAR_HEIGHT (IS_IPHONEX_ALL ? 20.0f + X_TOPSPACE : 20.0f)
#define TABBAR_HEIGHT (IS_IPHONEX_ALL ? 49.0f + X_BOTTOMSPACE : 49.0f)
#define NAVBAR_HEIGHT 44.0f
#define SEARCHBAR_HEIGHT (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"11.0") ? 56.0f : 44.0f)
#define BORDER_WIDTH_1PX ([[UIScreen mainScreen] scale] > 0.0 ? 1.0 / [[UIScreen mainScreen] scale] : 1.0)
三、广告页的图
以前做iPhoneX的时候广告页的图片就分了通用的图和X专用,所以我这已经被领导批评过了,希望其他的童鞋们早就想到了。
因为iPhone XR和iPhone XS Max的宽高比一样,切和X的宽高比相差0.001不到,所以不是精益求精的话大多数适配了X的地方是不用动的,只是一定要记得XR和XMax的尺寸在判断内。比如说用上面的宏IS_IPHONEX_ALL。
嗯.....目前就想到这些,等再碰到了慢慢更(手动滑稽)。
网友评论