`

Core Animation学习

阅读更多

 

Core animation 或者叫Quartz Core是一个Objective C类库,位于iOS框架的Media层。

 

在project中使用Core Animation时,首先要将QuartzCore.framework链接到project中,然后在使用animation的类中引入对应的h文件

#import <QuartzCore/QuartzCore.h>

 

添加动画:

1.使用UIKit中提供的animation API

UIKit中有一些接口可以创建简单的动画,例如:

 

    CGRect smallRect = CGRectMake(0, 0, 20, 30);
    CGRect bigRect = CGRectMake(0, 0, 200, 300);
    
    UIImageView *imgview = [[UIImageView alloc] initWithFrame:smallRect];
    imgview.backgroundColor = [UIColor redColor];
    [self.view addSubview:imgview];
    
    [UIView animateWithDuration:2 animations:^{
        imgview.frame = bigRect;
    }];
    
    [UIView animateWithDuration:2 animations:^{
        imgview.frame = bigRect;
    } completion:^(BOOL finished){
        if(finished){
            imgview.backgroundColor = [UIColor blueColor];
        }
    }];
    
    // set delay time,duration time,animation clock,completion block
    [UIView animateWithDuration:2 delay:5 options:0 animations:^{
        imgview.frame = bigRect;
    }completion:^(BOOL finished){
        if(finished){
            imgview.backgroundColor = [UIColor blueColor];
        }
    }];
 

 

 

2.使用Core Animation

使用Core Animation可以创建嵌套的对象,并且可以沿着x、y、z轴对它们旋转rotation、缩放scale和转换transform。使用Core animation,你可以创建动态的用户界面而不用使用更底层的图形API,如OpenGL ES。

相关参考:

Core Animation类体系

 

Core Animation核心动画以及基本原理

 

隐式动画和显式动画

 

//============================================

一张图片在一定范围内,水平左右移动:

	[self.imageView setImage:[UIImage imageNamed:@"推荐页登录按钮.png"]];
        CABasicAnimation *theAnimation;    
        theAnimation=[CABasicAnimation animationWithKeyPath:@"transform.translation.x"];
        theAnimation.duration=1;
        theAnimation.repeatCount=INT_MAX;
        theAnimation.autoreverses=YES;
        theAnimation.fromValue=[NSNumber numberWithFloat:0];
        theAnimation.toValue=[NSNumber numberWithFloat:-60];
        [self.imageView.layer addAnimation:theAnimation forKey:@"animateLayer"]; 

一张图片逆时针旋转

       [self.imageView setImage:[UIImage imageNamed:@"推荐页登录按钮.png"]];
        CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"transform"];
        animation.delegate = self;
        animation.toValue = [NSValue valueWithCATransform3D:CATransform3DMakeRotation(M_PI , 0, 0, 1.0)];
        animation.duration = 1;
        animation.cumulative = YES;
        animation.repeatCount = INT_MAX;
        [self.imageView.layer addAnimation:animation forKey:@"animation"];

  

Core Animation相关动画

Core Animation教学:关键桢动画

Core Animation教学:窗口淡入淡出特效

Core Animation教学:使用Transitions制作带动画效果的向导对话框

 

    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:0.5];
    [_headerView.activityIndicator stopAnimating];
    _headerView.hidden = YES;
    
    CGRect tFrame = self.tableView.frame;
    CGRect hFrame = _headerView.frame;
    self.tableView.frame = CGRectMake(hFrame.origin.x, hFrame.origin.y, tFrame.size.width, tFrame.size.height);
    
    [UIView commitAnimations];

 

 

 

 

   

 

分享到:
评论

相关推荐

    core animation

    - **Daniel Jalkut**:强调Core Animation对于Cocoa程序员的重要性,并认为本书是学习该技术的好伴侣。 #### 结论 《Core Animation for Mac OS X and the iPhone》是一本不可或缺的资源,它不仅提供了对Core ...

    ios-CoreAnimation核心动画学习.zip

    这个“ios-CoreAnimation核心动画学习.zip”压缩包很可能是为了帮助开发者深入理解并掌握Core Animation的关键概念和使用方法。下面我们将详细探讨Core Animation的核心知识点。 Core Animation并非是一个完整的...

    Core Animation Programming Guide 中文翻译版

    通过学习和掌握Core Animation,开发者能够创建出更加生动、交互性强的iOS和Mac应用,提升用户体验。这份中文翻译版的编程指南为中文开发者提供了一条了解和精通Core Animation的有效途径。无论是初学者还是经验丰富...

    Core Animation for Mac OS X and the iPhone 英文版

    《Core Animation for Mac OS X and the iPhone》是深入探讨苹果平台动画技术的重要参考资料,主要针对Mac OS X和iOS操作系统。...无论是对于初学者还是有经验的开发者,这本书都是深入学习Core Animation的宝贵资源。

    教你使用coreAnimation

    通过学习和实践这些Core Animation的知识点,初学者可以逐步掌握创建动画的技巧,为iOS应用增添生动性和趣味性。在项目"alexisgo-AnimationTalk-09ce067"中,你可以找到更多示例和代码片段,帮助你深入理解并运用...

    core animation advanced techniques源码

    在这个项目中,我们可以学习到如何充分利用Core Animation的潜力来创建引人入胜的用户界面和流畅的动画效果。 1. **Core Animation基础** - Core Animation是一种基于图层(CALayer)的系统,它负责处理视图的渲染...

    Core Animation动画例子

    通过这个“Core Animation动画例子”压缩包,你可以学习到如何在实践中运用上述知识点,创建出流畅、精致的iOS应用动画效果。记住,实践是最好的老师,深入研究并动手尝试这些示例,将有助于你更好地掌握Core ...

    iOS-CoreAnimation.pdf

    《iOS-CoreAnimation》是苹果平台下用于构建动态、交互式用户界面的核心技术之一。它是一个高性能的图形渲染和动画引擎,旨在快速、高效地组合和更新屏幕上的视觉元素,为iOS应用提供流畅、绚丽的动画效果。Core ...

    CoreAnimation-demo.zip

    通过学习和分析这些示例,你可以深入理解Core Animation的工作原理,并能够更熟练地在自己的iOS项目中实现复杂的动画效果。这些动画技术不仅限于用户界面的美化,还可以提高用户体验,使应用程序更具吸引力和交互性...

    iOS Core Animation:Advanced Techniques.zip

    《iOS Core Animation:Advanced Techniques》是一本专注于iOS平台核心动画技术的高级开发指南。核心动画是iOS系统中用于创建丰富视觉效果和动态用户界面的关键框架,它为开发者提供了强大的工具来构建流畅、交互性...

    ios-CoreAnimation初学者学习.zip

    这是今天刚简单研究了一下怎么描述一下这个CoreAnimation这个类来做动画效果的Demo,有什么不同意见欢迎反馈,然后有什么问题的可以留言。。。 然后时间比较紧张,没有去进行代码优化咯, 小伙伴们不喜勿喷哦~~~

    有1人下载 Core Animation Programming guide 6(资源error)

    标题中的“Core Animation Programming Guide 6”提示我们这可能是一个关于苹果平台开发,特别是与Core Animation相关的编程指南。Core Animation是Apple macOS和iOS系统中一个强大的框架,用于创建丰富的、高性能的...

    CoreAnimation 编程指导

    CoreAnimation编程指导是针对苹果平台,包括macOS和iOS,深度探索动画效果和技术的一个关键教程。这个指导旨在帮助开发者利用...通过深入学习和实践,开发者能够利用Core Animation创造出令人惊叹的交互式用户体验。

    iOS-CoreAnimation:Advanced Techniques-全中文.pdf

    通过学习《iOS-CoreAnimation:Advanced Techniques》中文版,开发者不仅能深入了解Core Animation的内在机制,还能掌握创建出色用户界面和动态效果的高级技术,从而提升iOS和macOS应用的用户体验。无论是初级开发者...

    CoreAnimation_Cookbook

    **CoreAnimation_Cookbook** 不仅是一本关于Core Animation的技术手册,更是开发者学习和掌握这项强大技术的重要资源。通过对文档的学习和实践,开发者可以充分利用Core Animation的强大功能,为用户带来更加丰富和...

    CoreAnimation_guide

    根据提供的文件信息,我们可以深入探讨与《CoreAnimation Programming Guide》相关的关键知识点,特别是关于Mac平台Xcode中的Core Animation技术。 ### 核心知识点一:Core Animation简介 Core Animation是苹果...

Global site tag (gtag.js) - Google Analytics