【发布时间】:2020-01-28 01:07:24
【问题描述】:
我正在尝试实现这样的布局:
基本上,我需要or 标签保持在中间并占据固定宽度,并且线条向屏幕边缘延伸。
这是我在 XIB 中所做的:
- 创建了一个水平 UIStackview,与
center对齐。 - 设置stackview的高度约束为
20,分布为fill。 - 添加了两个
UIView元素(用于灰线),高度限制设置为 5。 - 在上面的两个
UIView元素之间添加了一个UILabel。 - 添加了更多约束:
- 左 UIView 以
0从superview 引导,并以5跟踪到中间标签 - 右 UIView 以
4从中间标签引导并以0跟踪到superview。
在界面生成器上看起来不错,但在不同的屏幕尺寸和风景上,我发现中间的“or”标签可以拉伸并踢开左右 UIView 以弥补可用空间,这似乎是正确的:
如果我在中间标签上设置20的宽度约束,右侧的UIView会像这样不均匀地拉伸:
我知道元素的 CHP 在某种程度上很重要,我什至尝试过这样设置 CHP:
中间标签的CHP为251
左右 UIView 的 CHP 为 250。
这仍然给我留下了右侧 UIView 的不均匀拉伸。
我做错了什么?非常感谢您的见解! 非常感谢!
【问题讨论】:
标签: ios uiview xib uistackview