最近看到一篇博客介绍自动布局,顺便用SB 简单快速实现。下面是博客链接http://tutuge.me/2015/05/23/autolayout-example-with-masonry/
例子一:并排两个label,宽度由内容决定。父级View宽度不够时,优先显示左边label的内容.
思路可以看博客里面的思路,主要是Autolayout中的两个重要的属性“Content Compression Resistance”和“Content Hugging”。



例子二:四个ImageView整体居中,可以任意显示、隐藏。上面博客是自己实现的容器View,其实我们可以更简单快速UIStackView来实现。

思路是四个ImageView设置约束宽高。放进UIStackView,然后隐藏或者改变宽度约束为零。设置容器UIStackView 的约束即可。


有个技巧在View动画块里设置会有自然的过渡。

例子三:子View的宽度始终是父级View或者本身的一半(或者任意百分比)。

思路是第一确定一个View 的宽度,然后View 和 父View 设置等宽度,然后设置约束的比例即可。
如果是同一个View则,确定高或者宽,然后设置Aspect Ratio。


网友评论