我有一个基本的NSWindow没有装饰(标题栏等),NSWindow设置为不透明,没有阴影等。它位于屏幕保护程序级别(所以“最上面”的应用程序窗口)
contentView被设置为我的一个子类NSView,上面写着“加载”是通过绘制CIImage实现的。
整个窗口都在屏幕的中心。当加载事件在其他地方发生时,它会被打开。加载结束后,我会关闭窗口。
与其让它立即出现又消失,不如让它像Windows7/aero窗口关闭效果那样消失,并以同样的方式出现,这将是很酷的。
需要澄清的是:关闭时,窗口大小将增大约20%,并逐渐变得半透明。在打开时,窗口看起来会比开始时大20%,并且逐渐变得不透明。
我该怎么做呢?一种方法是,我可以使NSWindow实际上是basesize + 20%,也许可以使用NSAnimation来为视图添加动画。然而,这似乎不是一种直接的“好”方式。如何使用CA以我所描述的方式处理此窗口的动画?也对其他解决方案开放
发布于 2010-07-07 22:09:01
可以使用NSViewAnimation淡入淡入和调整窗口大小。与它的名字相反,它在窗口和视图上都可以工作。
请注意,我不知道Windows7中的任何效果是什么样子,因为我不使用Windows。
https://stackoverflow.com/questions/3197427
复制