我正在使用 AutoLayout 将 NSWindow 调整为内容的固有大小。这在我第一次向 NSWindow 的 contentView 添加子视图然后添加诸如“H:|[view]|”之类的视觉约束时效果很好 和“V:|[视图]|”。
我后来删除了这个视图(removeFromSuperView)并向窗口添加了另一个视图,并为新添加的视图添加了新的约束。然而此时 NSWindow 并没有缩小以占用新视图的最小尺寸。相反,它会“扩展”新添加的视图以反映窗口的旧大小。
我已将 contentView 的内容拥抱优先级设置为 1000(水平和垂直),认为这可行,但没有任何效果。我还尝试在新添加的视图上调用 invalidateIntrinsicContentSize 以及在 NSWindow 上调用 updateConstraints 但没有任何效果。