Duration:动画时长

delay:延时执行时间

Damping:阻尼系数

Velocity:启动速度

options:线性

//动画重置

weakSelf.Mybtn.transform = CGAffineTransformIdentity;

//手势:1.点击(UITapGestureRecognizer),2.缩放(UIPinchGestureRecognizer),3.拖动(UIPanGestureRecognizer)

//添加点击事件——响应用户事件交互

_handView.userInteractionEnabled=YES;

//创建点击手势

UITapGestureRecognizer *myTapGes = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tapgesAnimation:)];

//添加手势到视图

[_handView addGestureRecognizer:myTapGes];

//创建缩放手势

UIPinchGestureRecognizer *pinch = [[UIPinchGestureRecognizer alloc]initWithTarget:self action:@selector(tapgesAnimation:)];

//给视图添加手势

[_handView addGestureRecognizer:pinch];

//手势响应方法

- (void) tapgesAnimation:(UITapGestureRecognizer *) tapGes

{

__weak typeof(self) weakSelf=self;//定义一个弱引用self,block

//判断手势类型

if([tapGes isKindOfClass:[UITapGestureRecognizer class]])

{

//点击一下改变图片位置

CGFloat Y = self.handView.center.y;

//移动坐标

CGFloat value=200.0;

//动画改变

[UIView animateWithDuration:3.0 animations:^{

self.handView.center = CGPointMake(weakSelf.handView.center.x, Y+value);

} completion:nil];

}

else if([tapGes isKindOfClass:[UIPinchGestureRecognizer class]])

{

//强转手势为捏合手势,拿到捏合比例

UIPinchGestureRecognizer *pinch = (UIPinchGestureRecognizer *)tapGes;

if(pinch.state==UIGestureRecognizerStateChanged)

{

//按照手势来缩放图片

weakSelf.handView.transform = CGAffineTransformScale(weakSelf.handView.transform, pinch.scale, pinch.scale);

//返回重设尺寸

pinch.scale = 1;

}

else if(pinch.state == UIGestureRecognizerStateEnded)

{

//手势结束

weakSelf.handView.transform = CGAffineTransformIdentity;

}

}

}

//动画类型,翻转,旋转(CGAffineTransformRotate),缩放(CGAffineTransformScale),平移

//翻转transitionWithView

[UIView transitionWithView:weakSelf.Mybtn duration:1 options:UIViewAnimationOptionTransitionFlipFromLeft animations:^{

weakSelf.Mybtn.backgroundColor = [UIColor blackColor];//在执行翻转的时候做的事情

} completion:^(BOOL finished) {

//翻转动画完成之后执行新的一个动画

[UIView animateWithDuration:1.0 animations:^{

//动画重置

weakSelf.Mybtn.transform = CGAffineTransformIdentity;

//重新设置坐标,但是由于再动画方法里面所有他会执行平移动画

weakSelf.Mybtn.frame = CGRectMake(10, 70, 150, 150);

} completion:^(BOOL finished) {

}];

object-UI之基础动画相关推荐

  1. OS开发UI篇—核心动画(基础动画)

    文顶顶 最新博文发布地址:花田半亩(wendingding.com) iOS开发UI篇-核心动画(基础动画) iOS开发UI篇-核心动画(基础动画) 一.简单介绍 CAPropertyAnimatio ...

  2. iOS开发UI篇—核心动画(基础动画)

    一.简单介绍 CAPropertyAnimation的子类 属性解析: fromValue:keyPath相应属性的初始值 toValue:keyPath相应属性的结束值 随着动画的进行,在长度为du ...

  3. Android开发:1-1、UI编程基础----基本介绍

    UI编程基础 一.View和ViewGroup: 二.UI开发5大分类: 一.View和ViewGroup: ** View: ** 1.TextView:不可编辑文本框,用于显示信息 2.EditT ...

  4. ux和ui_使用UX设计师为Amazon的Alexa学习会话式UI的基础

    ux和ui by Tiffany Eaton 蒂芙尼·伊顿(Tiffany Eaton) 使用UX设计师为Amazon的Alexa学习会话式UI的基础 (Learning the basics of ...

  5. iOS动画系列之五:基础动画之缩放篇旋转篇Swift+OC

    这一篇主要介绍基础动画之缩放和旋转.这些基本操作分享完之后,我想想可以找个稍微复杂一点点的动画做做啦. 这篇继续基础篇,分享一下缩放和旋转.因为整体思路和平移基本上没有变化,加上源代码里面也有OC版本 ...

  6. iOS10 UI教程基础窗口的内容与设置起始窗口

    iOS10 UI教程基础窗口的内容与设置起始窗口 iOS10 UI教程基础窗口的内容与设置起始窗口,本章我们从iOS10开发中UI的基础知识开始讲解,其中包括了窗口.视图以及UI层次结构和Views的 ...

  7. IOS开发基础之核心动画 基础动画、关键帧、组动画案例

    IOS开发基础之核心动画 基础动画.关键帧.组动画案例 案例源码在我的主页里.实现效果图 // // ViewController.m // 30-核心动画 // // Created by 鲁军 o ...

  8. IOS UI开发基础之超级猜图完整版本-08

    IOS UI开发基础之超级猜图完整版本-08 // // ViewController.m // 09-超级猜图 // // Created by 鲁军 on 2021/1/31. //#import ...

  9. iOS动画系列之四:基础动画之平移篇

    就像咱们之前说的,所有的动画都是在CALayer上面的.所以在做动画之前我们就要先建立一个CALayer,然后把动画作用在自己创建的这个CALayer上.如果不知道CALyer是啥,可以看看前面的分享 ...

  10. iOS核心动画详解swift版----基础动画

    2019独角兽企业重金招聘Python工程师标准>>> iOS核心动画详解swift版---基础动画 创建工程,添加2个ViewController,通过rootViewContro ...

最新文章

  1. Java面试之Java基础上册(含答案)
  2. 洛谷1346 电车
  3. R语言实战应用精讲50篇(八)-随机区组设计资料的方差分析
  4. 应届生是这辈子最大的一次优势,也是最后一次!
  5. 选项卡示例代码###
  6. Android—AspectJ实践
  7. 前端学习(2906):Vite 解决了 Webpack 哪些问题
  8. java 常量折叠_深入理解Java虚拟机之早期编译器优化
  9. xp CMD命令参数
  10. 两款优质的Mac读写ntfs软件推荐
  11. opengl交叉编译
  12. 统计不及格人数(PTA-武理-C实验)
  13. 基于免费的SDCC开发51单片机
  14. 打印机后台服务器修复,打印机后台服务程序被禁用怎么修复?
  15. 使用Kinect V2进行录制视频
  16. flex:1 是什么意思
  17. java开发用allman风格_缩进风格
  18. 使用NDWI提取水体详细流程
  19. 李宏毅机器学习特训营——regression课程笔记
  20. 唐纳德与子串 Hard

热门文章

  1. python抓取财务数据_Python与财务「上」——数据采集篇
  2. html5 meter,html5 meter标签是什么意思?html5 meter标签的用法及属性介绍
  3. 众安在线荣获第十届中国证券金紫荆“最佳投资者关系上市公司”奖
  4. 看涨期权和看跌期权的图解
  5. 人类智擒超高能中微子探秘宇宙黑洞
  6. Navicat 12.1.20的安装
  7. 无聊科技正经事(第7期):跟村上春树学跑步,向古川武士学养成
  8. C语言小游戏之井字棋
  9. 数据结构课程设计---赛事统计,校园导航,算术表达式
  10. 还在自建代码仓库?阿里云 云效 的这款企业级代码管理工具免费、还香!