最近在做 随遇(我们公司的陌生人社交应用) 的时候,做了一个滑动旋转的引导图,类似当当和百度音乐,在对iphone 6 plus做适配的时候发现了一个奇葩的问题:在公司某个同事的机器上,引导图显示是正常的,在其他人的6P上,显示不正常,让我觉得很疑惑,于是乎debug一番,发现如下规律:
1,在引导图能正常显示的机器上,通过[UIScreen mainScreen].bounds 获得的高度是 667!!!
2,在引导图不能正常显示的机器上,通过[UIScreen mainScreen].bounds获得的高度是736。
很明显,1是不对的,667是6的高度!搞得我非常之不爽,一时也没弄明白其中的缘由,给测试妹子也给不了解释。
第二天我仔细对比这两台手机,发现其中一台竟然用的是 放大模式 !而6P在放大模式下,通过[UIScreen mainScreen].bounds 获得的高度竟然是667,我也是醉了。果断调回标准模式做适配,瞬间搞定。
另外,我又试了一下iPhone6在放大模式下,其高度是:568!!!iPhone5s及之前的iPhone没有放大模式。
同样遇到,这时候我给出的解决方法是判断设备版本,来让高、宽是否相等或相互替换。