我在 Interface Builder 中制作了一个 NSWindow。这个窗口里面是一个 NSScrollView,里面是一个自定义的 NSView。
NSScrollview 填充 NSWindow,自定义 NSView 填充 NSScrollview。
当自定义 NSView 发送 awakeFromNib 方法时,它的边界是 0,0 和 256x373,正如我所期望的那样,填充滚动视图。
但是后来我将 NSView 的大小更改为大于 373high 但它永远不会更改滚动视图中的大小。我试过设置框架,我试过设置界限,但没有任何改变。
除了,当我尝试更改自定义 NSView 的intrinsicSize 时,它确实发生了变化,但是它使 NSWindow 和 NSScrollview 的大小也发生了变化,以适应新的 256x1452 大小
谁能告诉我哪里可能出错了?这与在 Scrollview 或 NSView 上设置的约束有关吗?我没有设置,但是当我在 Interface Builder 中添加项目时,它们会自动为我添加
[编辑]
我已经对其进行了更改,以便以编程方式创建自定义 NSView 并使用 setDocumentView 添加到 NSScrollView:并且一切都按我的预期工作。所以我想从技术上讲我已经解决了这个问题,但如果有人知道,我仍然想解释为什么它不能通过 Interface Builder 工作。