Size Classes

iOS8应用在界面设计时,使用:Size Classes

iOS6引入了Auto Layout,使用约束进行布局

Auto Layout的评价:只是一个根据约束来布局的方案,而在对应不同设备的具体情况下的体验上还有欠缺。一个最明显的问题是它不能根据设备类型来确定不同的交互体验。很多时候你还是需要判断设备是iPhone还是iPad,以及现在的设备方向是竖直的还是水平来做出判断。

所以在iOS8里,苹果引入了一整套新的理念,来适应设备不断的发展,这就是Size Classes

不再根据设备屏幕的具体尺寸来进行区分,而是通过它们的感官表现,将其分为普通()和紧凑()两个种类。开发者便可以无视具体的尺寸,而是对这两类和它们的组合进行适配。

这里写图片描述

在Xcode中设计时,设计面板如下:

为了表征Size Classes,Apple在iOS8中引入了一个新的类,UITraitCollection。这个类封装了像水平和竖直方向的Size Class等信息。iOS8的UIKit中大多数UI的基础类(包括UIScreen,UIWindow,UIViewController和UIView)都实现了UITraitEnvironment协议,通过其中的traitCollection这个属性,可以拿到对应的UITraitCollection对象,从而得到当前的Size Class。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值