【发布时间】:2026-02-10 06:15:01
【问题描述】:
我正在尝试创建一些我认为使用 iOS 自动布局很容易的东西。我已经研究了几天,买了一本书,并尝试了各种关键字搜索组合。以前有人这样做过并且可以为我指明正确的方向吗?
我想要 3 个 UILabel,按列排列,中间的一个(内容更多)根据 iPad 的方向可变宽度。
我可以让它工作,但是一旦 iPad 从横向旋转到纵向(因此减少了中间标签的可用宽度),中间标签的内容就会被切断。 即中间标签高度不会调整大小。
这就是我想要实现的目标:
旋转到纵向后:
这是我的约束和视图层次结构:
如果我给中间的 UILabel 一个高度限制“小于或等于”250(在窄纵向模式下显示所有内容所需的高度),一旦 iPad 回到横向,标签内容就会扩展以适应新的宽度,但也不再与两侧其他标签的顶部很好地对齐。
错误的垂直对齐方式
这是我对中间标签的限制
(高度等于 250 的优先级为 1,因为这是我无法摆脱的生成约束。)
我已经尝试了很多内容拥抱和抗压缩的组合,我确信这就是答案,即需要 UILabel 框架来拥抱内容。我显然不明白这一点。
【问题讨论】:
标签: ios resize uilabel orientation autolayout