代码之家  ›  专栏  ›  技术社区  ›  Felixyz

将核心动画与Calayers以外的对象一起使用

  •  2
  • Felixyz  · 技术社区  · 15 年前

    我很确定我在网上看到过关于这个的讨论,但是现在我好像什么都找不到了。问题很简单:例如,有没有一种方法可以使用 CABasicAnimation 要在一个不是“Calayer”的对象上设置属性动画吗?(例如,“avaudioplayer”上的“volume”属性。)

    如果没有,除了子类化“calayer_”之外,还有什么方法可以使它工作吗?也许要遵守一些协议?

    编辑:在iPhone操作系统上做这个怎么样?

    1 回复  |  直到 15 年前
        1
  •  7
  •   Rob Keniger    15 年前

    你真的可以这样做。对象必须实现 NSAnimatablePropertyContainer 协议并返回有效的 CAAnimation 对象,用于在 +defaultAnimationForKey: 类方法。

    要回答您更新后的问题,不,您目前不能在iPhone上执行此操作,因为没有 NSanimatable属性容器 在iPhone操作系统中可用的协议,您无法获得 animator 来自其他对象的代理对象。