2016-04-03 87 views
5

我想在将其显示在屏幕上之前确定堆栈视图的固有尺寸。这个想法是将它用作屏幕底部的上拉菜单的一部分,但是当我在查询对象出现之前,它的大小为(-1,-1)。在我调用内部内容大小之前,我是否应该先做任何事情?在屏幕上显示之前确定UIStackView的固有尺寸

回答

11

UIStackView没有内在内容大小。你得到-1,因为那是UIViewNoIntrinsicMetric的值。

相反,要求其安装尺寸:

let size = stackView.systemLayoutSizeFittingSize(UILayoutFittingCompressedSize) 
+0

我想这样的作品。仍然需要为代码的其余部分理清逻辑,但它会给出正确的尺寸。 – drw

+0

@rob总是通过! :)效果很好 – Alan