任何人都可以在CALayer中解释内容属性中可动画的内容吗?它是如何动画的?

时间:2017-12-16 14:18:19

标签: ios core-animation

我正在学习核心动画。但我在解释中看到一个可动画的单词。请解释。 https://developer.apple.com/documentation/quartzcore/calayer/1410773-contents

1 个答案:

答案 0 :(得分:1)

对于CALayer属性,它只是意味着可以通过核心动画(例如those "animatable" properties)动画CABasicAnimation。例如,这会将CALayer .red属性(可动画)从let animation = CABasicAnimation(keyPath: "backgroundColor") animation.toValue = UIColor.red.cgColor animation.duration = 2 view.layer.add(animation, forKey: nil) 转换为CALayer,持续两秒钟:

UIView

有关详细信息,请参阅backgroundColor

我知道你问过UIView,但你也看到了#34;动画效果"同样参考CALayer属性。在这种情况下,这意味着可以使用Core Animation Programming Guide或较旧的基于块的动画方法(例如UIViewPropertyAnimator)对这些动画进行动画处理。

在可能的情况下,通常优先选择UIView属性,而不是CALayer属性,因为这些{{1}}动画技术提供了很好的基于块的再现,并倾向于更直接地与我们在UIKit中日常使用的内容相对应。但是当需要/需要时,您肯定会潜入{{1}}核心动画,如上所示。