最大宽度的 sizeToFit

sizeToFit with maximum width

我正在尝试以编程方式操作 UILabel 以使其具有动态宽度。

我发现使用 sizeToFit() 可以做到这一点。 现在这个标签变成了我的navigationItem.titleView。我希望它有一个最大尺寸,不能扩展。

navigationItem 中放入 2 barButtonItems 很重要。 例如:左边一个backBarButton,右边一个addButton

有没有办法改变sizeToFit()方法?

您可以使用 sizeThatFits: 查看文档 here

您必须指定要适合的 CGSize。

设置最大宽度使用 preferredMaxLayoutWidth 而不是像那样设置最大尺寸 bounds.width - 120

例如:

    yourLabel.sizeToFit()
    yourLabel.numberOfLines = 0
    yourLabel.preferredMaxLayoutWidth = bounds.width - 120