使用推送转换交换NSView

时间:2011-01-08 02:02:50

标签: objective-c cocoa animation core-animation nsview

我一直试图弄清楚这一段时间,但我似乎无法得到它。如何使用推送转换交换两个NSView(就像UINavigationController在iOS上做的那样)?到目前为止我尝试过的:

  • 使用NSAnimation子类< - 太慢
  • 使用NSViewAnimation和MGViewAnimation < - 太慢
  • 使用NSView动画代理< - 太慢
  • 使用CATransition < - 我不能使用它,因为CATransition要求视图是图层备份的,图层支持视图会导致文本渲染故障以及各种其他图形工件

2 个答案:

答案 0 :(得分:0)

前3个选项可能太慢,因为您尝试使用它们而不对图层进行分层支持。要在AppKit中执行动画,您需要以图层为后盾。

答案 1 :(得分:0)

似乎动画很慢,因为我正在制作一个非常大的视图。除了良好的旧图像交换技巧(拍摄视图图像和动画而不是视图本身)之外,我认为没有任何其他方法。