iOS动画入门一

原创 2015年07月07日 10:43:22

 一 动画介绍

在iOS中动画实现技术主要是:Core Animation。 Core Animation负责所有的滚动、旋转、缩小和放大以及所有的iOS动画效果。其中UIKit类通常都有animated:参数部分,它可以允许是否使用动画。 

本文将介绍UIView动画的实现方式,有基础方法和block方法。

二 实现方法

1 基础动画

 [UIView  beginAnimations:nil context:nil];  //动画开始
    //Code...
 [UIView commitAnimations];                  //动画结束

    //eg 设置lb向下移动
    [UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:3];
    CGPoint point = self.lb.center;
    point.y += 100;
    self.lb.center = point;
    [UIView commitAnimations];

2 blcok方法1

 [UIView animateWithDuration:3   //动画持续时间
                     animations:^{
        //Code...
    }];

//eg 改变lb的透明度
    [UIView animateWithDuration:3 animations:^{
        self.lb.alpha = 0.5;
    }];

3 blcok方法2

UIView animateWithDuration:3   //动画持续时间
                     animations:^{
        //动画执行
    } completion:^(BOOL finished) {
        //动画完成后执行
    }];

//eg 旋转lb第一种方法:
    CGAffineTransform endAngel = CGAffineTransformMakeRotation(90.0f*(M_PI/180.0f));
    
    [UIView animateWithDuration:3 animations:^{
        self.lb.transform = endAngel;
    } completion:^(BOOL finished) {
        self.stateLb.text = @"动画完成了";
    }];


4 blcok方法3

[UIView animateWithDuration:3   //动画持续时间
                          delay:1   //动画延迟时间
                        options:UIViewAnimationOptionCurveEaseIn    //设置动画过渡效果
                     animations:^{
        //动画执行
    } completion:^(BOOL finished) {
        //动画完成后执行
    }];

 //eg 改变lb的字体大小 和位置
    [UIView animateWithDuration:3
                          delay:1
                        options:UIViewAnimationOptionCurveEaseInOut //设置动画过渡效果
                     animations:^{
        CGPoint center = self.lb.center;
        center.x = 200;
        self.lb.center = center;
        
        self.lb.textColor = [UIColor blueColor];
    } completion:^(BOOL finished) {
        self.stateLb.text = @"改变lb的字体大小 和位置 完成*";
    }];



5 blcok方法4

[UIView animateWithDuration:3       //动画持续时间
                          delay:1       //动画延迟时间
         usingSpringWithDamping:1.0     //设置类似弹簧效果
          initialSpringVelocity:5.0     //设置初始速度
                        options:UIViewAnimationOptionCurveLinear //设置动画过渡效果
                     animations:^{
    
    } completion:^(BOOL finished) {
        
    }];

[UIView animateWithDuration:3 delay:1 usingSpringWithDamping:1.0 initialSpringVelocity:5.0 options:UIViewAnimationOptionCurveEaseInOut animations:^{
        CGPoint center = self.btn.center;
        center.y += 50;
        self.btn.center = center;
    } completion:^(BOOL finished) {
        self.stateLb.text = @"弹簧效果结束";
    }];



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

IOS 层动画

  • 2015年10月09日 17:41
  • 541KB
  • 下载

微信小程序 简单动画入门

一、什么是微信小程序?   小程序在我的理解中只是高度封装的H5,封装了各种组件。根据官方的说法小程序运行不是在浏览器当中。姑且算是微信的插件吧。 二、小程序不能操纵DOM   小程...

IOS 仿微博小动画

  • 2016年05月27日 15:21
  • 4KB
  • 下载

ios基础动画

  • 2017年08月11日 10:44
  • 633KB
  • 下载

ViewPager 从入门到带你撸个启动页之实战PageTransformer切换动画特效(四)

转载请注明出处(万分感谢!): http://blog.csdn.net/javazejian/article/details/52141393 关联文章: ViewPager 从入门到...

iOS上的图形和动画处理

  • 2013年01月25日 11:25
  • 5.32MB
  • 下载

ios上的图形和动画处理

  • 2013年07月18日 19:42
  • 5.02MB
  • 下载

GridView的用法、自定义控件入门写法和界面切换动画

控件GridView的使用: GridView是让item以数据表格的形式来显示布局。如果是单列表形式就使用Listview,如果是多行多列网格形式优先是使用GridView,一般用于显示图片,图片...

IOS动画效果

  • 2012年09月19日 19:45
  • 24KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:iOS动画入门一
举报原因:
原因补充:

(最多只允许输入30个字)