NSSplitView在动态添加子视图后不调整子视图的大小

时间:2015-12-05 22:07:28

标签: swift macos autolayout nslayoutconstraint nssplitview

我正在尝试将子视图添加到我的NSSplitView中,以便我的垂直拆分视图来自

first.prototype.delay = function(time) {...} etc... ?

---------

view A (height = 100)

---------

我认为这很简单,但在分割视图中添加新的子视图后,视图的高度都没有变化。

我正在做的是将视图B添加为子视图:

----------

view A (height = 50)
----------
view B (height = 50)

----------

这会导致调用splitViewDidResizeSubviews,但两个视图高度保持在100并且彼此重叠而没有显示分隔符。

我上传了一个展示问题的示例项目:https://duke.box.com/s/f50y2pjjbf3ib0y60c7yr5h3p3nicok7

感谢您的帮助

1 个答案:

答案 0 :(得分:4)

嗯,所以在IB中,NSSplitView中有一个名为'Arranges All Subviews'的复选框,它是在OS X 10.11中引入的。检查完后,我的观点正确调整大小。

OS X 10.11还引入了addArrangedSubview和insertArrangedSubview:atIndex方法

非常烦人,因为这似乎甚至没有在NSSplitView文档中列出。