iPhoneX适配

作者: 直男程序员 | 来源:发表于2018-02-28 15:52 被阅读91次


最近刚把公司项目都适配的iPhone X,适配完感觉总结下笔记好,所以写篇文章总结一下我适配过程的方法和地方.

1. iPhone X上下位置增加高度

iPhone X在原机型的基础上,上面的导航栏增加 24, 下面tabbar增加 34, 也就是iPhone X的导航栏现在高度是 64+24 = 88, tabbar高度是 49+34 = 83.

2.extension 判断机型是iPhone X

这里我extension了 UIDevice,通过判断屏幕高度来判断当前设备是否是iphoneX.

extension UIDevice {

    publicfuncisX() ->Bool{

        if UIScreen.main.bounds.height == 812 {

            returntrue

        }

        return false

    }

}

3.宏定义导航栏和tabbar高度

let kNavigationBarHei:CGFloat = 64.0 + (UIDevice.current.isX() == true ? 24.0 : 0)

let kBottomBarHei:CGFloat = 49.0 + (UIDevice.current.isX() == true ? 34.0 : 0)

项目中页面或控件相对父视图的约束值直接用这个宏即可

4.底部控件修改避免影响交互

比如像上面图所示,之前约束距底部就编程这样,在点击底部area区域是,可能会对按钮交互有影响,这种情况有几种解决方法,

1:控件上移,但这时候area区域会空出来,这时候如果页面是全屏内容的话,就比较麻烦了,还需要把area区域颜色修改或者自己创建view覆盖上去,这样比较麻烦,不推荐.

2.简单方法可以直接把控件高度增加,这样就可以把显示的内容和交互整体上移.

相关文章

网友评论

  • 梁森的简书:你是这是适配了iphone X 如果再出一个小屏幕的iphoneX或更大屏幕的iphoneX呢

本文标题:iPhoneX适配

本文链接:https://www.haomeiwen.com/subject/axxixftx.html