改变方向时UILabel没有调整

Posted

技术标签:

【中文标题】改变方向时UILabel没有调整【英文标题】:UILabel not adjusting when changing orientation 【发布时间】:2014-05-07 07:48:07 【问题描述】:

我正在使用自动布局,当设备方向发生变化时,我的标签没有调整其宽度。

横向模式下的标签:

纵向模式下的标签:

带有约束的设计模式中的标签:

在标签上,存在以下约束:

    宽度:大于等于220 20个静态场地标签的前导空间 带有超级视图尾随的尾随空格

如您所见,Portrait 模式是可以的,但问题是当方向变为横向模式时,标签保持原样,不调整,为什么会这样?我是否缺少任何约束?

【问题讨论】:

【参考方案1】:

为标签添加以下约束

【讨论】:

【参考方案2】:

您需要添加高度约束以及大于等于标签的常量。如下图。

我通过演示进行了尝试,结果如图所示。

我还对 UILabel 应用了以下约束。所以不需要应用宽度约束。只是高度限制做到了!

在这里检查我应用的上下左右约束以及我勾选的高度,然后我在 IB 中单击宽度,将常量更改为 >= 并且我没有勾选宽度。删除所有约束仅适用于下方。

【讨论】:

我这样做了,选择标签,编辑器 ==> Pin ==> 高度,然后选择高度约束,更改关系,将其设置为“大于或等于”,但它不起作用,有什么遗漏吗? 我已经为上面的帖子添加了答案。检查,如果有其他任何东西响起。

以上是关于改变方向时UILabel没有调整的主要内容,如果未能解决你的问题,请参考以下文章

如何在不改变文本透明度的情况下为 UILabel 设置背景图像并调整其 alpha?

当 UILabel 动态调整大小时,在 UIView 中移动 UIButton。 iOS

UILabel 动态内容自动调整大小问题

以编程方式创建的 UILabel 未在旋转时调整大小

UILabel 不会调整大小

当视图宽度发生变化时,如何使 UILabel 正确调整其尺寸?