使用Swift进行核心动画转换

Lim*_*ean 7 core-animation swift ios8

Apple文档(https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/CoreAnimation_guide/AdvancedAnimationTricks/AdvancedAnimationTricks.html)有以下示例:

CATransition* transition = [CATransition animation];
...
Run Code Online (Sandbox Code Playgroud)

但是当我在Swift中做到这一点时:

    let transition = CATransition.animation()
Run Code Online (Sandbox Code Playgroud)

我收到错误"animation()'不可用:使用对象构造'CAAnimation()'" - 这是否已被弃用或?如果是的话,过渡的新方式是什么?

Noa*_*oon 14

Objective-C [CAAnimation animation]是一种方便的方法:

[[[CAAnimation alloc] init] autorelease]
Run Code Online (Sandbox Code Playgroud)

CATransition继承CAAnimation并因此继承了便利构造函数.

在Swift中,这种初始化已经消失,您可以CATransition使用默认构造函数创建对象.

尝试 let transition = CATransition()