带有AutoLayout的NSScrollView限制了窗口对大小调整和拖动的响应

时间:2018-07-13 14:18:13

标签: macos cocoa autolayout nswindow nsscrollview

Apple's official Exhibition app demo中,viewDidLoad()的{​​{1}}中有这样的用法

ImageViewerController.swift

我注意到在/* Turn on translatesAutoresizingMaskIntoConstraints, Interface Builder turns this off for all views in a nib. The `NSScrollView` and `NSClipView` expect to be able to control their documentView via modifying its `frame`. */ imageView.translatesAutoresizingMaskIntoConstraints = true 文件中,xib已经设置了约束。注释掉该行代码后,该视图仍然有效。

为了更好地理解演示中的代码,我创建了一个最小项目,仅在默认视图控制器的视图下添加了imageViewNSScrollView是通过编程创建的。 如果激活了NSImageViewh中的约束,则该窗口将很大,并且无法调整大小和拖动。

v

我的问题是:

  1. 为什么我的项目中的约束会导致问题,而演示中的约束不会导致问题。
  2. 官方演示中的约束条件是否必要?

0 个答案:

没有答案