2009-12-15 166 views

回答

2

将它们并排放置,并使用NSViewAnimation来执行动画。

如果视图的大小可以改变,这可能会变得棘手。如果这两个视图的大小不一样,那就是两倍。

+0

谢谢,我没有像你说的那样做(并排),而是我用另一种简单的方法找到了这篇文章。 http://bish.fr/5vyr。 – Joshua 2009-12-15 19:00:36

0

使用CALayers实现所有实际绘图。 (我自己没有使用过Core Animation,但我无法获得更具体的内容。)将它们放在一个视图中,托管该层次结构,并使用Core Animation来执行幻灯片切换。

如果视图不是只显示,也就是说,如果它们托管用户可以与之交互的控件,则这可能无法很好地工作。图层或多或少只显示,因为您无法在图层中放置视图,只有视图而不是图层是响应者。

1

Marcus Zarra给出了一个很好的例子,说明如何在他的post on how to implement a wizard中使用Core Animation来达到这个效果。使用子视图和CATransition非常简单。

+0

这是一个很好的例子,几乎可以工作,除非在第二个视图中一切都不起作用。在第二个视图中,我有一个Web视图,即使我知道内容在那里,它也是完全空白的。这是一个显示它的视频... http://fwdr.org/z9tf。 – Joshua 2009-12-15 16:26:25

+0

不幸的是,WebViews无法在Mac上进行分层支持,因此它们无法与Core Animation搭配使用:http://stackoverflow.com/questions/1618498/webview-in-core-animation-layer。如果这是你的情况,我会按照Peter的建议使用NSViewAnimation。 – 2009-12-15 18:08:56

相关问题