根据约束获取UIView的最小大小

时间:2014-06-19 23:00:26

标签: ios objective-c uiview nslayoutconstraint

我创建了一个自定义笔尖并将其添加到我的视图层次结构中。视图使用大于或等于的约束分隔为子视图,换句话说,为视图提供最小尺寸以供使用。

是否可以从约束系统中获取UIView的最小大小?

1 个答案:

答案 0 :(得分:11)

UIView有一个方法systemLayoutSizeFittingSize:来返回视图的最小尺寸(或最大尺寸)。

CGSize smallestViewSize = [view systemLayoutSizeFittingSize: UILayoutFittingCompressedSize];

UIView方法intrinsicContentSize返回最理想的尺寸。这个尺寸可能有点在之前返回的两个尺寸的中间。

在iOS6之前,您可以调用sizeThatFits:来获得可能小于传入大小的拟合大小,或者默认情况下是接收器的边界。