首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CGPath动画

CGPath动画
EN

Stack Overflow用户
提问于 2009-07-24 06:03:35
回答 1查看 7.1K关注 0票数 3

我需要一些样例代码,我可以动画的曲线/弧形路径,应该画一个完整的圆圈动画?

如有任何意见,将不胜感激。

谢谢你,坐下

EN

回答 1

Stack Overflow用户

发布于 2009-07-28 07:06:26

UPDATE:认识到这个问题有更好的解决方案。只需创建一个循环路径,并将CAShapeLayer的CAShapeLayer属性从0.0f动画到1.0f。看看Ole:Drawing a path with CAKeyFrameAnimation on iPhone的答案

原始答案

您可以使用CAKeyframeAnimation并创建核心图形路径。这段代码以抛物线模式绘制一个图层,但你可以调整它来画一个圆圈。

代码语言:javascript
复制
- (CAAnimation*)pathAnimation;
{

    CGMutablePathRef path = CGPathCreateMutable();
    CGPathMoveToPoint(path,NULL,50.0,120.0);

    CGPathAddCurveToPoint(path,NULL,50.0,275.0,
                          150.0,275.0,
                          150.0,120.0);
    CGPathAddCurveToPoint(path,NULL,150.0,275.0,
                          250.0,275.0,
                          250.0,120.0);    
    CGPathAddCurveToPoint(path,NULL,250.0,275.0,
                          350.0,275.0,
                          350.0,120.0);    
    CGPathAddCurveToPoint(path,NULL,350.0,275.0,
                          450.0,275.0,
                          450.0,120.0);

    CAKeyframeAnimation *
        animation = [CAKeyframeAnimation 
                     animationWithKeyPath:@"position"];

    [animation setPath:path];
    [animation setDuration:3.0];

    [animation setAutoreverses:YES];

    CFRelease(path);

    return animation;

}
票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1175942

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档