iPhone X 适配那点事儿

近几日完成了项目的适配工作,只能说是个体力活啊.
大部分的 app 也基本完成了适配工作,本帖就不再介绍如何适配了,仅记录些注意事项.

  1. 引导图系列或其他地方使用的动画效果图可能需要增加一套了;

  2. 商品/活动/其他内容性图片,由于刘海的存在可能需要考虑优化设计了(如果影响其内容展示或效果);

  3. 无网络或其他的全局提示栏适配,正在寻找更好的优化方案;

  4. 跟顶部有关的位移动画,提及此处纯属因为恶心的计算;

  5. 由于挨插屏幕长的可怕,导致很多 UI 的布局已经不美观甚至变形;

  6. 的获取如果与采集的 view 有关系也需要确认一下是否精确;

  7. 各种自定义弹窗确认在安全区域;

  8. 所有 web 页面确认适配;

  9. 输入框位置及动画;

  10. 悬浮标的位置;

  11. 修改约束后的相关联动画效果;

  12. 多功能 view 的各种状态;

  13. 第三方的适配状态;

  14. 最不常用的功能或节目,不要遗漏啊.

下面提供几个本人使用的宏

// 判断是否是 iPhone X
#define iPhoneX ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1125, 2436), [[UIScreen mainScreen] currentMode].size) : NO)
// 状态栏高度 (如果隐藏状态栏将获取不到高度 此处写死)
#define kStatusBarHeight        (iPhoneX ? 44.f : 20.f)
// 导航高度 
#define kNavigationBarHeight    (44.f)
// 顶部高度
#define kHeaderHeight           (kStatusBarHeight + kNavigationBarHeight)
// tabbar 以下高度 (适配时可直接使用此宏  例: x + kTabBarBottomHeight)
#define kTabBarBottomHeight     (iPhoneX ? 34.f : 0.f)
// tabbar 高度
#define kTabBarHeight           (49.f + kTabBarBottomHeight)

你可能感兴趣的:(iPhone X 适配那点事儿)