自动布局之Size Classes



自动布局Adopting—For Xcode6及以下


前面章节我们已经介绍了Xcode4的Adopting,以及Xcode5的Auto Layout,那么随着Xcode6,也就是的ios8的发布,iphone6也推出了特别大的屏幕尺寸。以前发布的应用需要匹配小屏幕的iPhone,以及HD版本的大尺寸的iPad,如果现在又要匹配大尺寸的iPhone,那么屏幕的匹配就会越来越复杂,现在小规模的屏幕尺寸匹配已经不能够解决这些问题。


苹果借鉴了安卓屏幕碎片化失败的教训,所以苹果公司给我们了一种解决方案。写一个应用程序以适应不同的屏幕大小-这就是Xcode6才有的Size Classes。


adopting1.png


当我们选中这个属性之后,就会发现场景变得很胖。不像是iPhone或者是iPad的屏幕了。这也就是说,它给我们的是一个虚拟的场景大小,不再是某一个尺寸大小了。


adopting2.png


在点击这个属性之后,我们可以看到上面三块地方都没有改变,唯一改变的就是在屏幕正下方。


adopting3.png


打开这个设置,可以看到在里面有类似于一个九宫格一样的方框。当鼠标在里面游走的时候,上面两个红圈中的内容会发生相应的改变和说明。Compact是缩小的意思。w和h分别是宽和高。最下面是当前设置好的场景大小。


adopting4.png


下图是宽度缩小,高度正常的一个场景。所以,横向和纵向三个方格分别代表了Compact,Any,Regular三种。不同的选择适宜不用的设备。


adopting5.png


下图的选择说明中就提出了适合所有的iPhone设备竖向的屏幕,当然包括最小的3.7和最大的5.5英寸的屏幕大小。那我们可以通过各种不同的选择来为不同需要的设备开发应用程序。


adopting6.png


在一些小方框中,有一些绿点显示出来。它们的数量就是适应设备多少的意思。下图中所有方框中都有了绿点,那它底下的说明也是这样的布局适合所有的设备种类。


adopting7.png


当我们在iPhone设备上面放置一些控件的时候,切换到IPad的应用编辑的时候,应用程序的控件对象是不会改变的。所以这就实现了代码复用的效果。当然,应用代码和控件对象的代码一样,也可以实现复用的效果。比如当我们点击这个按钮,然后就会改变这个Label组件的文本信息。这个原理无论在iPhone还是iPad上面,这样的代码都是一样的。所以,通过适应这些设备写出来的代码并不会是特别大的,因为许多代码都实现了复用。


adopting8.png



【本文由麦子学院独家原创,转载请注明出处并保留原文链接】

logo
© 2012-2016 www.tttoutiao.net
蜀ICP备13014270号-4 Version 5.0.0 release20160127

免费领取价值1888元求职宝典!

客服热线 400-862-8862

回到顶部

贵州快3代理 广西快3 上海时时乐 北京11选5走势图 快乐赛车官网 欢乐生肖 PK10牛牛 澳洲幸运10开奖结果 极速11选5 欢乐生肖