码迷,mamicode.com
首页 > 其他好文 > 详细

学习笔记之AutoLayout

时间:2015-04-23 17:02:00      阅读:179      评论:0      收藏:0      [点我收藏+]

标签:

Align:用来添加对齐约束。

Pin:添加标准约束,比如相对于其他视图的大小和位置。

Reslove Auto Layout Issues:可以让Xcode 自动生成约束,或者基于约束把子视图的边框更新到正确的位置。

Resizing Behavior:可以用来设置哪些类会继承这些约束。

 

Pin

item of new Contrains  就是你对一个view添加约束的时候,当你点了下面那个“add contrains”按钮后,这个view的frame会做出相应地响应(但子view的frame不会变化)。

all frame of contrainer  这个view包括其子视图的frame都会变化。

 

Resizing Behavior

默认情况下,Siblings and Ancestors(兄弟姐妹和祖先)和Descendants(后代)都是选中状态。但是推荐把Silbings和Ancestors留空。如果选中Siblings and Ancestors,修改该视图时,父视图和同级视图会一起变动,如果选中Descendants,该视图和子视图会一起变动。

备注:XCode6.3中没有找到Resizing Behavior这个约束按钮。

 

用代码写Autolayout约束

需要对使用的View的translatesAutoresizingMaskIntoConstraints的属性设置为false.
即可开始通过代码添加Constraint,否则View还是会按照以往的autoresizingMask进行计算.
而在Interface Builder中勾选了Ues Autolayout,IB生成的控件的translatesAutoresizingMaskIntoConstraints属性都会被默认设置false.

添加或者移除约束。对于iOS 6或者iOS 7可以调用addConstraint(s):和removeConstraint(s):方法;对于iOS 8及更新的版本,直接设置约束的active属性或者调用activateConstraints:与deactivateConstraints:类方法。

 

Taps 

在使用Equal Heights/Widths Constraint时,要注意两个视图的比例关系,不要弄反了,即First Item 和 Second Item的关系。

Constant表示当前控件相对于SuperView的x/y的相对距离 

Priority表示该约束的优先级,范围是1-1000,1000最高。可以设置多个约束,通过优先级来调整视图变化。

学习笔记之AutoLayout

标签:

原文地址:http://www.cnblogs.com/liuliuliu/p/4444724.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!