如何使sizeToFit忽略宽度?

我在一段代码中使用sizeToFit,我希望它忽略宽度,但只是基于高度的“大小适合”。 那可能吗?

您可以存储原始边界,并在调用-sizeToFit之后将新边界设置为具有旧宽度。

 CGRect oldBounds = someView.bounds; [someView sizeToFit]; CGRect newBounds = someView.bounds; newBounds.size.width = oldBounds.size.width; someView.bounds = newBounds; 

您应该使用sizeThatFits:方法,并以您想要的宽度和高度的CGFLOAT_MAXCGFLOAT_MAX 。 例如,这是将多行标签设置为特定宽度的推荐方法。

苹果公司的工程师向我推荐了这个build议,以回应我为你所问的问题提出的function要求。