ScrollView篇
-
ContentSize与屏幕等比
-
添加UIView[或StackView]做ContentView
添加ContentView -
设置滚动方向
设置横向滑动 - 设置宽度
3.1.control+🖱右键拖向控制器的View
拖出选项
3.2. 选择Equal Widths,若竖向可选择Heights
与屏幕等宽
3.3. 设置Multiplier为合适的比例
设置比例
3.4. 可见contentSize已设置完成
UIView篇
-
等宽视图
- 约束方式 -
(可自由调整间距与边距)
1.1. 先创建三个小视图
三个颜色的UIView
1.2.红色UIView添加top、left约束,(截图Width勾错了,应该是Height🤪)
左约束
1.3.绿色UIView添加top、对红色UIView-left约束,(截图Width勾错了,应该是Height🤪)
中约束
1.4.黑色UIView添加top、对绿色UIView-left、right约束
右约束
1.5. 选中redViewgreenViewblackView一键添加Equal Widths
添加等宽约束
1.6. 可见已经等宽啦
约束完成
1.7. 约束方式在于调整间距与边距更加方便~
------分隔------
- StackView方式 -
(一般使用等边距)-iOS9后可使用
2.1. 清除所有约束
Clear Contraints
2.2. 使用StackView,给其添加约束后,开始使用
转换StackView
2.3. 修改属性
属性调整
Axis -- 方向
Distribution -- 等比关系
Spacing -- 间距
- 完成啦,缺点就是间距是相等的,不能像约束一样做
非对称视图
约束优先级
- 普通约束,可见
Red View对Green Button有了依赖约束Tralling Spacing
相对约束 - 由于
Red View并没有添加Width约束,若设置Green Button.Hidden隐藏,那么这条Tralling就会失效,因此需要一条新的约束保持约束平衡
依赖SuperView的约束 - 此时两条约束产生了
冲突
我们需要接受:
当一条有效约束失效后,另一条约束才生效(当仅且有一条相同类别约束生效)因此需要设置
约束优先级 : Priority
修改约束优先级
- 最后,将
Green Button进行隐藏
4.1Red View对Green Button的约束依赖被打断
4.2Red View将使用低优先级约束进行求值
4.3Red View根据低优先级约束,适应屏幕
















