更改视图大小时如何更新阴影大小?

时间:2019-05-28 21:08:34

标签: cocoa nsview nsshadow

现在我有一个NSView,其中包含几个子视图,如下所示:

x------x
|      |
x------x
|      |
x------x

第二个子视图开始隐藏,但稍后显示。问题在于根视图所投射的阴影不会覆盖新显示的第二个子视图。

有趣的是,如果我调用NSAnimationContext.runAnimationGroup { self.view.layoutSubtreeIfNeeded() },阴影会得到更新,但这也会产生不想要的效果,使整个视图从无到有动画化为新大小。在动画块外部调用self.view.layoutSubtreeIfNeeded()是无效的。

我需要弄清楚如何使阴影无效,以便它可以识别根视图的新大小。

0 个答案:

没有答案