【发布时间】:2012-05-25 04:10:23
【问题描述】:
所以我正在解决我在尝试使用 CAKeyframeAnimation 制作一些简单动画时遇到的问题,我相信我的问题更多地与不完全理解 NSWindow、NSView 和 CALayer 如何协同工作有关。 我有两个主要问题。 MyContainerWindow(NSWindow 子类)和 MyMovableView(NSView 子类)。我的目标是能够在屏幕上来回设置 MyMovableView 动画,同时保持通过 MyContainerWindow 单击任何内容的能力,除非您单击 MyMovableView 所在的任何位置。我可以通过在 myMovableView.layer 上调用 -addAnimation:forKeyPath: 来完成第一部分,一切都很好,除了我无法单击 MyContainerWindow。我可以让窗口变小,但是动画会被窗口的边界剪掉。
要点: 1) MyContainerWindow is initWithFrame to [[NSScreen mainScreen] frame], NSBorderlessWindowMask, defer no, buffered 2) 我将WantsLayer:TRUE 设置为 MyMovableView 3) MyContainerWindow 很清晰,我希望它就像根本没有窗口一样,但需要它,所以我有一个更大的画布来制作动画。
有什么明显的东西我错过了能够点击一个 NSWindow 吗?
提前致谢!
【问题讨论】:
标签: objective-c macos