屏幕适配问题共有四种解决方案:
(1)根据屏幕宽高写控件frame(下策);
(2)Autoresizing的使用(中策);
但局限性较大,只能针对父子关系进行有限调整,如边距固定,尺寸可变,对于兄弟关系的调整无法实现。对于UI比较固定的app,这种方式基本满足
(3)AutoLayout的使用(上策);
(4)sizeClasses+AutoLayout的使用(上上策)
屏幕的宽和高分别分成三种情况:(Compact,Regular,Any).也就是紧凑,正常和任意。这样宽和高三三整合,一共九种情况
总得来说,有两种适配方式:
一种是控件的所有参数等比放大,效果是屏幕上的内容在不同大小设备上完全相同;
另一种是控件的大小不变,控件的左右间距随屏幕变化,效果是屏幕越大,显示内容越多。
观察iOS中自带的系统应用,大多是采用第二种方式。