界面展示bug随笔

ios 日前遇到一个界面展示bug

界面是通过计算获得宽度,通过Masonry进行设置,但是显示到界面上的时候,xr和11这两个机器都出现了问题

然后发现对于约束的设置,常量的精度是有一定限制的,但是具体没有特别测试,大致的宽度变换能如下所示

// xr

    // 385.39583333333328 == 385

    // 385.39583333333329 == 385.5


    // iphone 5s

    // 385.15416666666662 == 385.5

    // 385.15416666666661 == 385


    // iphone 6

    // 385.24861111111105 == 385.5

    // 385.24861111111104 == 385

因为适配都是通过设计给出6s屏幕的各个尺寸大小,计算是通过屏幕宽度除以375.0获得一个比例值,然后设置得到的,但是由于对于精度截取的不同,会导致各个屏幕展示的不同,因此也会产生隐患

而且对于3x的屏幕,会增加一级.333目前还没得到通过什么算法划分出来的进位


界面展示bug随笔_第1张图片
对应机型的界限

暂时只是简单知道一个边界,后期需要避免踩红线

再加上https://www.jianshu.com/p/41a8ccdf91ed以及 https://www.apple.com/cn/iphone/compare/中对于像素点的介绍

因此目前需要适配屏幕的时候,

1 、iphone 5

2、iphone 5s

3、iphone 6/7/8

4、iphone 6p/7p/8p

5、iphone se

6、iphone xs/11pro/x

7、iphone xr/11

8、iphone xsm/11prom

你可能感兴趣的:(界面展示bug随笔)