码迷,mamicode.com
首页 > 其他好文 > 详细

屏幕适配问题的总结

时间:2016-10-16 18:48:25      阅读:131      评论:0      收藏:0      [点我收藏+]

标签:

屏幕适配的解决方案:

   1.使用frame:可以使用[UIScreen mainScreen].bounds.size.height来判断是哪个版本,根据屏幕的宽高进行计算控件的大小位置,这种方法,代码复杂,容易出错;而且维护难度大,灵活性极差,一些子控件的布局如果各个版本没有变化,可以使用frame来设置。

   2.Autoresizing:它只能设置子控件随着父控件的改变而改变,对于兄弟控件关系的调整无法实现。

   3.Autolayout:iOS6之后出现的,iOS7才得到很好的推广,能够很轻松的进行屏幕的适配,但是不能做到完全的适配,一些特殊的情况需要我们通过判断版本进行适配,一般纯代码的话会使用masonry来约束布局

   4.对于一些比较特殊的情况,例如不同版本下的字体的大小不一样,应该通过if...else语句或者switch语句判断版本号或者屏幕的宽高进行不同的设置,或者cell间距大小的设置等。

   5.Size Classes使用

  iOS8中新增了Size Classes特性,他是对当前所有iOS设备尺寸的一个抽象。

  屏幕的宽和高分别分成三种情况:(Compact,Regular,Any).也就是紧凑,正常和任意。这样宽和高三三整合,一共九种情况。针对每一种情况,如果需要的话,我们可以单独在storyboard或   xib中设置UIView的自动布局约束,甚至某一个button是否显示都是能轻松实现的。

屏幕适配问题的总结

标签:

原文地址:http://www.cnblogs.com/mjblog/p/5967047.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!