使用Autolay时自动调整UILabel的大小
我使用自动布局(NSLayoutConsraint)创build一个xib。 有没有办法使用sizeToFit或类似的东西,使UILabel适合其内容?
我已经尝试设置“大于或等于x”的约束,并尝试将高度设置为低于此值。 但是,它会一直覆盖高度属性。 当你有NSLayoutConstraints时sitToFit似乎不工作。
我怎样才能得到适当的尺寸标签?
为您的宽度和高度约束创build一个IBOutlet,并使用sizeToFit
来更改其constant
属性,并调用needsUpdateConstraints
对UILabel的高度使用“大于约束”,并在viewDidLayoutSubviews
调用sizeToFit
为我做了诀窍
我不需要调用needsUpdateConstraints
。
您还需要将行数设置为0以允许无限制的行数,如果您想要限制,则需要> 1。
此外,属性preferredMaxLayoutWidth
需要设置,它由接口生成器自动设置为视图宽度。
您应该尝试降低高度限制优先级。