fame,autosize,autolayout 的之我见

很多新人对于这几个东西,都不是很理解概念比较混淆。所以整理下自己的思绪,写下这篇文章。

要描述一个控件最基本的信心就是 :位置 ,大小  也就是point 和size

而frame 就是囊括这个信息的最小单元了。

autosize 就是自适应大小,适应父控件的大小 ,比如我希望我的控件随着父控件的大小的变化而变化,不需要手动更新frame ,这个时候 autosize 就应运而生了。

而autolayout 也是自适应 ,autosize 和autolayout 的最大区别在于 坐标系的不同。

autosize 基于绝对坐标,而autolayout基于相对坐标 ,

这就好比描述一个物体的位置,我们可以使用 经度,纬度来描述它 ,也可以这样描述它:“在某某大厦的对面”

autolayout 能够描述与之相关控件之间的关系 ,而autosize 则不会与相邻的控件有任何关系,因为 只要绝对坐标不改,它永远就在那里 ,不会受其他因素的干扰。

而一个很好的相对坐标却能解决很多事 ,最常见的 好比军训 向左看齐。

如果我们要移动这一列向左看齐的队伍的话,

最简单的方法就是移动最左边的那个人的位置 ,然后再说一句 “向左看齐”,这样整个队伍都移动了。

这也是autolayout的强大之处 。

原文地址:https://www.cnblogs.com/TengSys/p/4834817.html