IOS开发之——动画-图标抖动(97)
一 概述
- 模仿删除应用时的图标抖动
- 页面上添加图片,勾选属性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)相关推荐
- iOS 开发之动画篇 - 从 UIView 动画说起
毋庸置疑的:在iOS开发中,制作动画效果是最让开发者享受的环节之一.一个设计严谨.精细的动画效果能给用户耳目一新的效果,吸引他们的眼光 -- 这对于app而言是非常重要的. 本文作为动画文集的第一篇, ...
- ios开发App的图标背景色不能是透明
在ios开发中,App的图标背景不能是透明的,否则打包出来以后,在界面上的显示会是一个带有把黑色背景的图标. 换成白色背景后:
- iOS开发中动画之点赞图标放大效果
大多数手机App的点赞图标在我们点击的时候都会有一个放大的效果,随后还原.之前公司App有点赞功能但却没有这个放大之后还原的效果,于是研究一下准备将该效果添加到项目中. 思路:为点赞图标添加一个动画, ...
- ios开发学习--动画(Animation)效果源码分享--系列教程1
Genie View 介绍: 实现所谓的genie effect.即点击最小化或删除按钮,视图会被吸进某个地方. http://ios.itmdc.com/forum.p ...
- iOS开发-动画总结
一.简介 IOS 动画主要是指Core Animation框架.官方使用文档地址为:Core Animation Guide. Core Animation是IOS和OS X平台上负责图形渲染与动画的 ...
- iOS 开发之动画篇 - Transform和KeyFrame动画
原文发布于http://www.jianshu.com/p/a071bba99a1b 序言 追求美好是人的天性,这是猿们无法避免的.我们总是追求更为酷炫的实现,如果足够仔细,我们不难发现一个好的动画通 ...
- iOS开发:APP图标问题
链接下一篇:iOS上线准备与检查工作二:launchScreen与launchImage适配 一:图标问题 图标格式: 以下数据取自2017-11-6苹果官网:https://developer.ap ...
- IOS开发之——动画-转场动画(98)
一 概述 CATransition转场动画介绍 专场动画属性及过渡效果 示例(动画切换模拟转场动画) 二 CATransition专场动画介绍 nCATransition是CAAnimation的子类 ...
- IOS开发 生成app图标
1.一键生成所有尺寸对应的应用图标,链接如下 图标工场 - 移动应用图标/启动图生成工具,一键生成所有尺寸的应用图标/启动图 2.在Assets中,将图标放在对应的位置 3.在Build Settin ...
最新文章
- NLP相关论文上新-2019
- NeurIPS 2021 | 华为诺亚Oral论文:基于频域的二值神经网络训练方法
- boost::pointee用法的测试程序
- find_all 返回空 python_python小课堂23 - 正则表达式(一)
- java多线程笔记补充之线程的生命周期
- 【Tensorflow】深度学习实战05——Tensorflow实现Inception V3
- 查看linux可用磁盘空间_如何在Linux中检查可用磁盘空间
- IDEA/Pycharm 插件与主题切换
- 20-10-010-安装-kafka_2.11-1.1.0-单节点测试
- Python 3.7 已上架 Microsoft Store,让你在 Windows 轻松使用 Python
- 【图像处理】彩色图像处理(Color Image Processing)
- windows应用迁移到linux下
- nginx配置openssl证书
- Spark项目 error while loading <root>, error in opening zip file
- hibernate 3中要注意的地方
- java控制浏览器,java控制夜神访问浏览器
- denoiser插件_最新版AE/PR红巨人调色降噪插件合集 Magic Bullet Suite 13.0.9 Win/Mac
- 生还者+感染者+物品的轮廓颜色修改方法
- 信息收集--子域名查询
- TensorFlow下用自己的数据训练Fater-RCNN