【问题标题】:iPhone animation: how do I animate the filling up of an area?iPhone 动画:如何为填充区域设置动画?
【发布时间】:2010-05-25 14:09:43
【问题描述】:

考虑一个圆圈。现在考虑圆的半径,从圆心向右绘制。现在想象一下,半径围绕圆心旋转,旋转时扫过一个区域。我的问题是:我想使用 iPhone 的动画技术来填充扫过的区域,使用与圆的背景区域不同的颜色,因为半径从 0 度旋转到围绕圆的任意选择的度数。

我查看了 Core Animation API、KeyFrame Animations 等,但不知道如何执行此操作。任何提示都将受到欢迎。

谢谢, 桑迪普

【问题讨论】:

    标签: iphone core-animation


    【解决方案1】:

    查看CAShapeLayer。它使您可以在两个核心图形路径之间进行动画处理,这可以根据您的需要进行。在这种情况下,您可能希望在定义薄填充楔形的路径和覆盖较大圆角的填充楔形之间进行动画处理。您可能需要使用 CAKeyframeAnimation 来确保它以您想要的扫掠动作和您想要的方向进行动画处理。

    【讨论】:

    • 嗨,布拉德,非常感谢您的帮助。我已经被这个问题困住了很长一段时间。我一直在查看 CAShapeLayer 上的文档,看起来这可以解决我的问题。再次感谢。
    • 我查看了 CAShapeLayer 类。原来CABasicAnimation类有一个“fromValue”和一个“toValue”属性,可以分别设置起始路径和结束路径,然后可以将CABasicAnimation添加到CAShapeLayer中,得到一个从开始路径到结束路径。但我需要使用 CAKeyframeAnimation - 它不为“from”(开始)路径和“to”(结束)路径提供“fromValue”和“toValue”属性。我的问题是:如何将 CAShapeLayer 类与 CAKeyframeAnimation 类一起使用?
    • @Sandeep - CAKeyframeAnimation 采用一组键值在动画期间的特定点命中。在这种情况下,这些值将是 CGPathRef 路径,转换为 id(例如:(id)path, (id)path2, ...)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-04-12
    • 1970-01-01
    • 2013-05-27
    • 1970-01-01
    • 1970-01-01
    • 2016-04-25
    • 1970-01-01
    相关资源
    最近更新 更多