一 概述

  • 模仿删除应用时的图标抖动
  • 页面上添加图片,勾选属性User Interaction Enabled,给图片设置长按事件,并执行抖动动画
  • 图标抖动时,先往左旋转5度,再向右旋转5度,再向左旋转5度恢复原位置,再重新开始

二 过程

2.1 Main.storyboard中添加动画,并设置User Interaction Enabled

User Interaction Enabled

2.2 定义旋转角度

#define angle2radian(x) ((x)/180.0*M_PI)

2.3 长按事件

UILongPressGestureRecognizer *longPress=[[UILongPressGestureRecognizer alloc]initWithTarget:self action:@selector(longPress:)];-(void)longPress:(UILongPressGestureRecognizer *)longPress
{if (longPress.state==UIGestureRecognizerStateBegan) {CAKeyframeAnimation *anim=[CAKeyframeAnimation animation];anim.keyPath=@"transform.rotation";anim.values=@[@(angle2radian(-5)),@(angle2radian(5)),@(angle2radian(-5))];anim.repeatCount=MAXFLOAT;anim.duration=0.5;[_imageView.layer addAnimation:anim forKey:nil];}
}

2.4 ImageView添加长按事件

[_imageView addGestureRecognizer:longPress];

2.5 代码

- (void)viewDidLoad {[super viewDidLoad];UILongPressGestureRecognizer *longPress=[[UILongPressGestureRecognizer alloc]initWithTarget:self action:@selector(longPress:)];[_imageView addGestureRecognizer:longPress];}
-(void)longPress:(UILongPressGestureRecognizer *)longPress
{if (longPress.state==UIGestureRecognizerStateBegan) {CAKeyframeAnimation *anim=[CAKeyframeAnimation animation];anim.keyPath=@"transform.rotation";anim.values=@[@(angle2radian(-5)),@(angle2radian(5)),@(angle2radian(-5))];anim.repeatCount=MAXFLOAT;anim.duration=0.5;[_imageView.layer addAnimation:anim forKey:nil];}
}

2.6 效果图

IOS开发之——动画-图标抖动(97)相关推荐

  1. iOS 开发之动画篇 - 从 UIView 动画说起

    毋庸置疑的:在iOS开发中,制作动画效果是最让开发者享受的环节之一.一个设计严谨.精细的动画效果能给用户耳目一新的效果,吸引他们的眼光 -- 这对于app而言是非常重要的. 本文作为动画文集的第一篇, ...

  2. ios开发App的图标背景色不能是透明

    在ios开发中,App的图标背景不能是透明的,否则打包出来以后,在界面上的显示会是一个带有把黑色背景的图标. 换成白色背景后:

  3. iOS开发中动画之点赞图标放大效果

    大多数手机App的点赞图标在我们点击的时候都会有一个放大的效果,随后还原.之前公司App有点赞功能但却没有这个放大之后还原的效果,于是研究一下准备将该效果添加到项目中. 思路:为点赞图标添加一个动画, ...

  4. ios开发学习--动画(Animation)效果源码分享--系列教程1

    Genie View        介绍: 实现所谓的genie effect.即点击最小化或删除按钮,视图会被吸进某个地方.         http://ios.itmdc.com/forum.p ...

  5. iOS开发-动画总结

    一.简介 IOS 动画主要是指Core Animation框架.官方使用文档地址为:Core Animation Guide. Core Animation是IOS和OS X平台上负责图形渲染与动画的 ...

  6. iOS 开发之动画篇 - Transform和KeyFrame动画

    原文发布于http://www.jianshu.com/p/a071bba99a1b 序言 追求美好是人的天性,这是猿们无法避免的.我们总是追求更为酷炫的实现,如果足够仔细,我们不难发现一个好的动画通 ...

  7. iOS开发:APP图标问题

    链接下一篇:iOS上线准备与检查工作二:launchScreen与launchImage适配 一:图标问题 图标格式: 以下数据取自2017-11-6苹果官网:https://developer.ap ...

  8. IOS开发之——动画-转场动画(98)

    一 概述 CATransition转场动画介绍 专场动画属性及过渡效果 示例(动画切换模拟转场动画) 二 CATransition专场动画介绍 nCATransition是CAAnimation的子类 ...

  9. IOS开发 生成app图标

    1.一键生成所有尺寸对应的应用图标,链接如下 图标工场 - 移动应用图标/启动图生成工具,一键生成所有尺寸的应用图标/启动图 2.在Assets中,将图标放在对应的位置 3.在Build Settin ...

最新文章

  1. NLP相关论文上新-2019
  2. NeurIPS 2021 | 华为诺亚Oral论文:基于频域的二值神经网络训练方法
  3. boost::pointee用法的测试程序
  4. find_all 返回空 python_python小课堂23 - 正则表达式(一)
  5. java多线程笔记补充之线程的生命周期
  6. 【Tensorflow】深度学习实战05——Tensorflow实现Inception V3
  7. 查看linux可用磁盘空间_如何在Linux中检查可用磁盘空间
  8. IDEA/Pycharm 插件与主题切换
  9. 20-10-010-安装-kafka_2.11-1.1.0-单节点测试
  10. Python 3.7 已上架 Microsoft Store,让你在 Windows 轻松使用 Python
  11. 【图像处理】彩色图像处理(Color Image Processing)
  12. windows应用迁移到linux下
  13. nginx配置openssl证书
  14. Spark项目 error while loading <root>, error in opening zip file
  15. hibernate 3中要注意的地方
  16. java控制浏览器,java控制夜神访问浏览器
  17. denoiser插件_最新版AE/PR红巨人调色降噪插件合集 Magic Bullet Suite 13.0.9 Win/Mac
  18. 生还者+感染者+物品的轮廓颜色修改方法
  19. 信息收集--子域名查询
  20. TensorFlow下用自己的数据训练Fater-RCNN

热门文章

  1. 海贝播放器在iso上无法识别cue文件的问题
  2. 全球及中国多普勒导航仪行业投资分析及前景预测报告2022-2028年
  3. CentOS 6 安装配置教程【完整版】
  4. Cadence IC618使用
  5. Linux利用Esmtp 选择邮件服务器发送邮件(解决手机接收乱码)
  6. Parsing error: No Babel config file detected for
  7. ncx_mempool 轻量级内存池
  8. Tita绩效宝:绩效管理评语范例
  9. 卡方检验及R语言实现
  10. Android BitMap图片压缩