自动布局上的 UILabel sizeWithFont 不起作用

Posted

技术标签:

【中文标题】自动布局上的 UILabel sizeWithFont 不起作用【英文标题】:UILabel sizeWithFont on AutoLayout not working 【发布时间】:2013-01-31 15:11:14 【问题描述】:

我更新了我的应用程序,以使用 iPhone 6。 但是,当我在 XIB 上打开自动布局时,标签仍然没有调整大小。

CGSize expected = [[textLabel text] sizeWithFont:textLabel.font constrainedToSize:max lineBreakMode:textLabel.lineBreakMode];

我该如何解决这个问题?

【问题讨论】:

【参考方案1】:

您是否使用从-sizeWithFont:constrainedToSize:lineBreakMode: 返回的尺寸来设置标签的框架?使用自动布局时,不应直接设置框架。您需要使用新尺寸更新视图的约束。

请注意,ios 6 不需要自动布局。如果您没有令人信服的理由来切换,最好让现有应用保持原样。

【讨论】:

以上是关于自动布局上的 UILabel sizeWithFont 不起作用的主要内容,如果未能解决你的问题,请参考以下文章

自动布局以动态调整 UILabel 大小不起作用

无法在自动布局“打开”的情况下移动 UILabel 的 Y 位置

iOS自动布局:将UILabel的左边缘与容器中的水平中心对齐?

使更改 UILabel 文本不触发自动布局

带有自动布局的 uilabel 使用填充调整大小

自动布局 - UILabel 在方向更改后宽度缩小,这是由另一个应该自动调整字体大小的 UILabel 引起的