CAAction
协议(protocol)的文档似乎有点少,而且很少在书籍和博客中评论。其唯一方法 runActionForKey:object:arguments:
的参数有点神秘。根据我的经验,“object”参数似乎总是 CALayer
,而“arguments”字典总是 nil
。
似乎该协议(protocol)可能被设计为在 Core Animation 中的多个地方使用,否则为什么不定义层参数的类型,为什么会有从未使用过的额外字典?但据我所知,它只与 CALayer
一起使用。那是对的吗?有没有人举出上述结论不正确的例子?
最佳答案
CAAction 的唯一实际用途是作为隐式动画的基础——也就是说,它是像这样的表达式机制的核心
myLayer.position = // ... whatever ...
神奇地能够动画层的位置变化(假设它不是 UIView 的主要底层)。
有关 Action 搜索机制的完整解释,请参阅我的书:
关于ios - CAAction 的 runActionForKey :object:arguments: arguments take? 可以取什么值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20618686/