关于AutoLayout

因为我也是刚学一两个月,会的也不是太全,不过对于用Autolayout布局也算是有些心得了。
    首先是storyboard底下那个W 和H的。。看到了吗?就是点一下之后弹了个可以点9个格子的东西。
    那个就代表着你写的APP是给怎样的屏幕用的,然后你将会在这类型的屏幕上做布局。所以说是怎样的屏幕呢?唔...其实他都有写的,我就偷懒了,不一一描述了。

![举个栗子](http://upload-images.jianshu.io/upload_images/705264-0f770c93cff323ea.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)

我举了其中两种栗子来说。
第一种是wChR。 他下面有描述,就是所有的iPhone的竖屏情形,也就是说你是用这个屏幕做布局是在iPhone竖屏下做布局。
第二种是wRhA。描述说的就是所有均匀宽度的布局,比如iPad的横屏或者竖屏。
简单地说,你要是开发iPhone的竖屏,那么就选第一种,基本就没问题啦。
---------------------华丽的分割线-------------------------

然后就是 SB右下角那3个布局功能啦

1、对齐功能 -----align约束


Align

依次说功能哈,英语好的就可以忽视了。

首先最上面的4+3,也就是前7个,对于单个View或者说单个控件来说是不能使用的,听完他们功能就知道为什么了,第一个到第四个(Leading ~ Bottom)分别就是左、右、上、下4个边界的对齐。那你觉得如果只有一个控件你能怎么对齐呢?所以这4个用法是你同时框住几个控件,然后勾上这个对齐,那么你选中的几个控件就会在对应的边界对齐了。另外,其实常用的还有一种方法,就是对其中一个控件按住control拖到另一个控件上放开,选择LeadingTrailingTopBottom这四个选项对应的就是这4个功能。
    中间3个跟前四个用法相似,功能不同,分别是水平中心线对齐,垂直中心线对齐,和基线对齐,这个基线是可以自己设置哪条为基线的。
    最下面2个,单个控件或者视图也可以使用,因为他们的功能是是的你选中的这个控件或视图在它所在的View中水平居中或者垂直居中,其实也就是水平中心线对齐和垂直中心线对齐,只不过与他们对齐的对象是它的父视图而已!

2、固定功能 -----pin约束

pin

固定功能,意思就是用来固定你这个视图或控件的,第一个上下左右分别填4个参数的就是和最近的控件或视图的距离,比如说左边填了5,那么意思是如果你左边有个控件,那么你选的这个控件的左边界距离左边那个控件的右边界距离为5pt,是不是很绕?慢慢想想吧~记住那个红色虚线点了才会生效哦。另外下面有个margins选项,有没有你们试试就知道了,就是会多一段间隔出来的,虽然很多人都说他是魔法margin,但是我目前还几乎没用过。还有待以后发掘他的好处了。
    然后就是本视图或控件的定宽和定高。添加了这两个约束就会定长了。
    接下来的2个需要多个控件或视图一起用,跟之前的对齐一样,他们分别是等宽和等高(这个在一行有几个等宽视图的时候用很好用哦)
    再接下来的Aspect Ratio, 这个也就是等比,添加之后这个视图的长宽就会以你设定的值来显示了。(比如用在一些imageView上,服务器传来的图片是16:9的,那你的IV就也要16:9啦不然拉伸后可能就不太好看啦)
    接下来这个是对齐功能,和第一个是一样的~

Resolve

3、重新处理功能 ----- Resolve Autolayout Issue
    这个意思很明显的,第一个更新视图框架,也就是说在你设置完约束之后你的视图可能是在左边,但是约束会让他在右边,然后就会出现右边有个橙色虚线的框框


比如这样!

比如上图这样,你一开始拖下来的控件在这里,也就是你看到的位置,但是你添加完约束之后,他实际位置应该是橙色虚线框框那里的,那这是你选择update frame之后你看到的这个控件就会去到橙色虚线那里,然后虚线会没了,不仅虚线,所有橙色线都会没了,因为你看到的控件已经和实际约束设定的位置重合了。
    第二个就是更新约束,他会根据你现在看到的位置来添加约束并且固定他,这个一般很少用,因为未必会添加到你想要的约束哦。
    第三个也是自动添加漏掉的约束,因为约束一定要用完全,也就是一定要让这个视图“有存在感”,举个例子吧,你拖下来一个View,然后只给他添加2个约束,一个是距离左边界5,一个是距离右边界5,那上下呢?只有这两个约束能固定住这个View吗?显然不能,那么这样的约束就是错误的。所以这个Add Missing 约束,就是可以添加缺少的约束。然后固定他,但是也未必是你想要的哦。
    第四个是用他建议的约束。
    第五个是清楚所有约束。

---------------------华丽的分割线-------------------------

总结:

你设置的约束必须具备两个功能。
        1、确定该视图的位置
        2、确定该视图的大小
    但是要注意约束的冲突,比如你设定了2:1的等比约束,又对他设置300宽400高,那会报错的。
    然后剩下的就是多联系布局了,相信你很快可以熟练运用Autolayout!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,639评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,277评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,221评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,474评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,570评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,816评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,957评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,718评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,176评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,511评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,646评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,322评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,934评论 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,755评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,987评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,358评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,514评论 2 348

推荐阅读更多精彩内容