Objective c 如何约束NSWindow';s contentView是否不超过屏幕大小?
我试图将Objective c 如何约束NSWindow';s contentView是否不超过屏幕大小?,objective-c,swift,macos,autolayout,Objective C,Swift,Macos,Autolayout,我试图将NSWindow.contentView约束为永远不大于屏幕大小(即最大NSWindow大小)。 以下是(简化的)视图层次结构: NSWindow NSThemeFrame NSWindow.contentView Header [height: 200] GrowableSubview [height: flexible] growtablesubview的高度优先级为NSLayoutPriorityDragTh
NSWindow.contentView
约束为永远不大于屏幕大小(即最大NSWindow
大小)。
以下是(简化的)视图层次结构:
NSWindow
NSThemeFrame
NSWindow.contentView
Header [height: 200]
GrowableSubview [height: flexible]
growtablesubview
的高度优先级为NSLayoutPriorityDragThatCanResizeWindow
,因此当视图的高度发生变化时(由于某些用户交互),它可以增大窗口
当Header.height+growtablesubview.height
超过屏幕高度时,问题开始出现。
由于窗口的大小不能超过屏幕大小,因此contentView
将被剪裁
当前,标题
视图在顶部(图像左侧)被剪裁,而不是可增长子视图
在底部(图像右侧)被剪裁
如何确保窗口contentView
静态定位在顶部,或防止growtablesubview
大于屏幕高度