我在NSSpliView中使用自动版式,设置如下图所示
分割视图位于一个可以调整大小的窗口中,当调整大小时,分隔线将按比例更改50:50,如何更改此比例,以便保持底视图的高度和顶视图的大小(但不超过124像素) ),但仍然可以通过拖动拆分来手动更改它吗?
总结一下,您有三个要求,
底视图在调整大小时保持不变
如果是顶视图,则降低持有优先级(选择NSSplitView以获取正确的检查器)
顶视图的尺寸不能超过124像素
添加不等式约束,该约束将视图的高度设置为小于或等于124像素。您可以在IB中执行此操作。下一步,在您的控制器类的自定义视图中为此约束创建一个IBOutlet也是一个好主意...
移动分隔线时,顶视图应能够小于124像素。
我不完全确定,但可以检出NSSplitView委托方法,例如splitView:resizeSubviewsWithOldSize:
或splitViewDidResizeSubviews:
。当您使用分隔符调整大小时,委托方法应覆盖高度限制,使其成为当前调整大小。所以类似下面的委托方法
self.heightConstant.constant = NSHeight(topView)
或者,您可以删除约束并在以后需要时重新添加它。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句