SizeClass和Autolayout

1.Size Class是配合Auto Layout来使用的,让Auto Layout方式变得不那么复杂。

2.Size Classes其实就是将iOS设备屏幕的Size进行分类例如:iPhone4s横屏wCompact/hCompact,竖屏wCompact/hRegular ; iPhone5s(6,6+)横屏wRegular/hCompact,竖屏wCompact/hRegular ;iPad横竖屏都是wRegular/hRegular

3.理论上如果一个view没有任何constraint,那么view将没有位置及大小,但目前来看是没问题的,何解?原来如果不给一个view添加任何constraint,系统会自动给view添加左、上、宽、高四个约束,就是说新绿色的view会有固定的宽和高,然后以屏幕左上角为参考点,有一个系统添加的默认位置。(如果我们向绿色view添加任何其他约束,那么系统自动添加的约束将失效)

4.还有一个问题是,刚刚切换了很多不同类型的模拟器,相当于切换了不同的size class,但显示绿色view都正常,而size class的存在的目的就是为了区分不同的size class(例如:iPhone4s横屏wCompact/hCompact,iPhone4s竖屏wCompact/hRegular,iPad横竖屏都是wRegular/hRegular),然后来做不同的UI布局,何解?当前的size class为wAny/hAny,也就是说在size class为wAny/hAny的时候添加constraint,在其他size class的时候也生效。其实从字面上也可以看出,Any就是任何的意思,Compact和Regular是Any的子类。

5.使用autolayout的情况:

    a 当需要展示的内容很多并且尺寸不固定;

    b 程序需支持屏幕旋转(主要是iPad程序,iPhone程序横屏的场景有点非主流);

    c 程序通用于iPhone和iPad;

转载于:https://www.cnblogs.com/tangaofeng/p/4848893.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值