我有一个带有多个选项卡的 NSTabView,每个选项卡都包含一个 NSScrollView。在 scollviews 中,我动态放置使用自动布局和约束调整大小的自定义视图。
现在,如果我将自定义视图添加到例如。tab1 并在此选项卡处于活动状态时调整窗口大小一切正常,自动布局不会抱怨。
另一方面,如果我将自定义视图添加到 tab1,切换到另一个选项卡,调整窗口大小,然后切换回 tab1 自动布局中断并显示以下消息:
Unable to simultaneously satisfy constraints:
(
"<NSAutoresizingMaskLayoutConstraint:0x4011d8f60 h=-&- v=-&- H:|-(0)-[FlippedDocumentView:0x4011b76e0] (Names: '|':NSClipView:0x40120eb80 )>",
"<NSLayoutConstraint:0x4012a5c80 H:|-(10)-[TextViewModuleView:0x401236e80] (Names: '|':FlippedDocumentView:0x4011b76e0 )>",
"<NSLayoutConstraint:0x4011148e0 H:[TextViewModuleView:0x401236e80]-(10)-| (Names: '|':FlippedDocumentView:0x4011b76e0 )>",
"<NSAutoresizingMaskLayoutConstraint:0x4011d8f00 h=-&- v=-&- H:[FlippedDocumentView:0x4011b76e0]-(0)-| (Names: '|':NSClipView:0x40120eb80 )>",
"<NSAutoresizingMaskLayoutConstraint:0x4011d5e00 h=--& v=--& H:[NSClipView:0x40120eb80(0)]>"
)
我的问题是,为什么自动布局对活动选项卡工作正常而对非活动选项卡工作?
更新:我很确定这是一个错误。我只在自动布局模式下使用 IB 制作了最简单的程序(根本没有代码):
我拖动一个选项卡视图(它会自动获得前导、尾随、顶部和底部约束)
在其中一个选项卡上我拖动滚动视图(它会自动获得前导、尾随、顶部和底部约束)
在滚动视图上我拖动一个文本字段(它有一些自动约束),但我设置了前导、尾随、顶部和底部约束,以允许使用窗口调整文本字段的大小
因此,现在选择带有滚动视图的选项卡=>文本字段时,我可以调整窗口大小 - 没有问题。但是,当我激活另一个选项卡时,调整窗口大小,然后使用滚动视图激活我的选项卡 - 自动布局抱怨与我之前报告的类似消息。事实上,如果只设置前导和尾随约束,也会发生同样的情况。
任何人都可以尝试复制它吗?