像这个问题一样,我有一个 NSView,它是 NSWindow 的 contentView,它包含几个垂直堆叠的子视图。其中一些是固定大小的,其中一些可以使用展开按钮展开或折叠。
我想实现一种“手风琴”效果,其中展开或折叠其中一个子视图会使其他所有内容调整并相应地调整超级视图和窗口的大小。
看起来确实应该能够通过使用自动布局设置正确的一组约束来实现这一点,我现在可以很好地完成初始布局。但我不知道如何设置约束,以便超级视图自动调整大小以拥抱子视图。
上面链接的问题中的 OP 从来没有得到答案,并提供了他自己的解决方案,就像我开始独立实施的那个一样,但我想我会再次把它扔在那里,以防万一有任何自动布局大师知道一个技巧. 似乎应该有一种方法可以通过利用自动布局让超级视图拥抱子视图,而无需手动计算子视图的大小并手动重置超级视图的大小。
有人知道怎么做吗?