SizeClass的使用介绍

原创 2016年08月30日 14:55:44

SizeClass的使用介绍

一、 sizeclass的作用

sizeClass是苹果公司在ios8之后的系统中为了适应多屏幕尺寸而设计的开发方式,仅用于StoryBoard控件,有效解决iPone与iPod的屏幕问题,即一个应用会根据不同的屏幕尺寸(或者设备)添加不同的约束,满足用户的一般性审美原则。


什么时候使用SizeClass?
1、 需要开发iPhone与iPod通用的程序(最重要的)
2、 该应用可以横屏(类如手游、其他的软件没有必要横屏)

二、 几种屏幕类型

屏幕选择器的模式(类似九宫格)
compact:紧凑
Any:任意
Regular:宽松的
手机屏幕的各模式

ipod(横/竖屏):Regular(height)+Regular(Width)


iPhone4S/5/5S/6:
竖屏:w:Compact h:Compact
横屏:w:Compact h:Regular

iPhone6P
竖屏:w:Compact h:Regular
横屏:w:Regular h:Compact
landscape:横屏
portrait:竖屏
注意:不同的布局方式不可以有交集(如:AA与AC是不可以的)
总结:
1、如果项目不支持横屏显示,使用w:Compact h:Regular(或者直接取消使用sizeCalss)

三、 如何使用sizeClass

1、 检查是否打开SizeClass(新建的工程默认是打开的)
打开(或者关闭)方式如图(Xcode7):勾选IB Document下的Usu Size Class
注意:仅仅在开发单一的iPhone软件时候没必要使用size Class

2、 使用技巧
1、 可以在不同布局样式(有两种方式:在选中某个控件的约束下,可以点击在工具栏的Constant的小加号,选择不同样式的约束,还有一种方式是在IB中选择下面的不同样是的sizeClass进行约束)下添加不同的约束
可以设置不用的边距,位置,以及控件的相对位置,新增或者删除某些控件,也可以从新进行UI布局,其他样式下的约束此时呈现灰色,不用管他。
2、 布局为Compact Any的样式适合于所有的iPhone,但是不适合与iPod
3、 一般情况下Any Any中的布局是适合任意尺寸的,不过还是可以做一些微调(比如说对于ipod)
4、 如何在其他样式中不显示某些控件或者约束
在选中该控件的前提下,打开工具栏,点击下面的installed前的小加号,再选择对应的样式,installed的作用是否显示(不勾选则不显示)
如下图,说明该选择控件在Compact Any下是不显示的,其他样式显示。

学习参考:ios8 AutoLayout与Size Class自悟



4、 布局为 Any Any 的样式适合于iPhone和iPod
注意:在使用约束的时候,如果想使边距为零,Pin中的 Constrain to margin 复选框不要勾选,否则还是会有边距。
5、 如果应用不横屏(或与iPod通用),最好取消SizeClass
版权声明:本文为博主原创文章,转载请注明

iOS9之UIStackView体验,无需任何约束,这才是真正的自动布局,快到不能呼吸

Apple在2012年推出AutoLayout,以前很排斥,现在用的飞起啊,2014年推出了Size Class,2015年又推出UIStackView, 他提供了一组接口用于平铺一行或者一列的的视...

UIStackView 看我就够了

介绍 UIStackView 是 iOS9新增的一个布局技术。熟练掌握相当节省布局时间。 UIStackView 是 UIView 的子类,是用来约束子控件的一个控件。但他的作用仅限于此,他不能用...

xcode6中自动布局autolayout和sizeclass的使用

一、关于自动布局(Autolayout) 在Xcode中,自动布局看似是一个很复杂的系统,在真正使用它之前,我也是这么认为的,不过事实并非如此。 我们知道,一款iOS应用,其主要UI组件是由一个个相...

Xcode6中自动布局autolayout和sizeclass的使用

一、关于自动布局(Autolayout) 在Xcode中,自动布局看似是一个很复杂的系统,在真正使用它之前,我也是这么认为的,不过事实并非如此。   我们知道,一款iOS应用,其主要UI组件是由...

自动布局autolayout和sizeclass的使用

自动布局autolayout和sizeclass的使用 2014-09-15 11:05 编辑: wanglei 分类:iOS开发 来源:CocoaChina 6 129704 ...

Xcode6中自动布局autolayout和sizeclass的使用

一、关于自动布局(Autolayout) 在Xcode中,自动布局看似是一个很复杂的系统,在真正使用它之前,我也是这么认为的,不过事实并非如此。   我们知道,一款iOS应用,其主要...

iOS 8 AutoLayout 及SizeClass(三) 使用详解 好多值得学习及研究的地方

一、概要 通过对iOS8界面布局的学习和总结,发现autolayout才是主角,autolayout是iOS6引入的新特性,当时还粗浅的学习了下,可是没有真正应用到项目中。随着iOS设备尺寸...

38.Xcode6中自动布局autolayout和sizeclass的使用

一、关于自动布局(Autolayout) 在Xcode中,自动布局看似是一个很复杂的系统,在真正使用它之前,我也是这么认为的,不过事实并非如此。...

使用SizeClass

简介 iOS的各种设备屏幕尺寸各不相同,开发一个app不得不考虑所有的尺寸。幸好有Auto Layout,极大的简化了这一过程。现在又有了Size Classes,我们甚至可以在iphone和ip...

xcode6中自动布局autolayout和sizeclass的使用

一、关于自动布局(Autolayout) hi,all: 在经过了一番犹豫之后,我决定将我自己做的这个小APP的源码公布给大家: 其出发点是和大家一起学习iOS开发,仅供学习参考之用。之前代...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SizeClass的使用介绍
举报原因:
原因补充:

(最多只允许输入30个字)