需求
如上图红圈圈出来的部分,四个按钮等宽,所有相互之间的边距为10。
限制
这个需求使用StackView可以很快捷的实现,可是StackViwe只兼容到iOS9以上,因此通过普通拉线设置约束的方式实现。
做法
1、将四个按钮放入一个父View中;
2、设置四个按钮与父View以及四个按钮相互之间的边距都为10;
3、设置后一个按钮的宽度等于前一个按钮的宽度,并将每个宽度相等的约束的优先级调到750;
4、如果其中某个按钮的宽度过大或过小,则将其宽度相等于前一个按钮的约束的优先级掉低到250.
原因
优先实现边距为10的约束,然后实现宽度相等的约束。
网友评论