ios动画-新浪微博app点击发微博按钮动画的实现
ios平台实现动画非常简单,本代码实现方式更是菜鸟级........
思路:
1.点击发微博按钮后,切换控制器,在此控制器中创建6个UI按钮.
2.6个按钮的frame设置成动画结束后所在的位置.
3.为每个按钮添加transform属性,使其一开始出现的位置在屏幕下方.
4.在UIView动画中清空transform属性,注意清空的时间应该依次有一小段时间间隔.
5.transform清空后为每个按钮添加关键帧动画,实现抖动效果
代码:
for (int i = 0; i < count; i ++) {//创建6个UI控件int posY = 200;int row = i / numsProcolumn;int col = i % numsProcolumn;CGFloat margin = (self.view.frame.size.width - viewWH*numsProcolumn)/(numsProcolumn+1);UIImageView *image = [[UIImageView alloc]init];image.image = [UIImage imageNamed:[ NSString stringWithFormat:@"tabbar_compose_%d",i ]];image.backgroundColor = [UIColor clearColor];image.bounds = CGRectMake(0, 0, 50, 50);image.center = CGPointMake( col * 70, row *70);image.frame = CGRectMake(margin + (margin+viewWH)*col, posY+(margin+viewWH)*row, viewWH, viewWH);[self.view addSubview:image];//设置初始y方向偏移CGAffineTransform trans = CGAffineTransformTranslate (image.transform, 0, (400 + row *viewWH));image.transform = trans;//清空偏移量的动画[UIView animateWithDuration:0.25 delay:i/10.0 options:UIViewAnimationOptionAllowAnimatedContent animations:^{//清空偏移量image.transform = CGAffineTransformIdentity;} completion:^(BOOL finished) {//抖动动画CAKeyframeAnimation *shakeAnim = [CAKeyframeAnimation animation];shakeAnim.keyPath = @"transform.translation.y";shakeAnim.duration = 0.15;CGFloat delta = 10;shakeAnim.values = @[@0, @(-delta), @(delta), @0];shakeAnim.repeatCount = 1;[image.layer addAnimation:shakeAnim forKey:nil];}];}
完整代码下载:点击下载
ios动画-新浪微博app点击发微博按钮动画的实现相关推荐
- iOS仿QQ侧滑菜单、登录按钮动画、仿斗鱼直播APP、城市选择器、自动布局等源码
iOS精选源码 QQ侧滑菜单,右滑菜单,QQ展开菜单,QQ好友分组 image 登录按钮 image 3分钟快捷创建高性能轮播图 ScrollView嵌套ScrolloView(UITableView ...
- iOS仿QQ侧滑菜单、登录按钮动画、仿斗鱼直播APP、城市选择器、自动布局等源码...
iOS精选源码 QQ侧滑菜单,右滑菜单,QQ展开菜单,QQ好友分组 登录按钮 3分钟快捷创建高性能轮播图 ScrollView嵌套ScrolloView(UITableView .UICollecti ...
- 抖音html5动画,css实现抖音订阅按钮动画效果
前段时间刷抖音,觉得关注时的按钮动画很好看,加上自己本身最近也在学习前端知识.所以就想怎么自己实现出来,最终效果还可以,但是感觉自己做的还不够好.仅供参考.
- android 天气动画,为app制作炫酷天气动画 – WeatherView
WeatherView 从1.1.0版本开始这个库使用了一个不同的setter结构. WeatherView是一个为app制作一个炫酷天气动画的Android库. Setup Android Stud ...
- 怎样做一个iOS App的启动分层引导动画
http://www.cocoachina.com/ios/20141211/10610.html 一. 为什么要写这篇文章? 这是一个很古老的话题,从两年前新浪微博开始使用多层动画制作iOS App ...
- 怎样做一个iOS App的启动分层引导动画?
一. 为什么要写这篇文章? 这是一个很古老的话题,从两年前新浪微博开始使用多层动画制作iOS App的启动引导页让人眼前一亮(当然,微博是不是历史第一个这个问题值得商榷)之后,各种类型的引导页层出不穷 ...
- 献给初学iOS的小盆友们------微博app项目开发之一项目初始化
献给初学iOS的小盆友们--微博app项目开发之一 项目初始化 本人自学iOS也有七八个月了,不敢说学到很深入了,但也算入了门.此次微博app项目参考了传智播客培训教材,主要学习内容有架构思想,封装思 ...
- 简单的UIButton按钮动画效果iOS源码
这个是简单的UIButton按钮动画效果案例,源码,简单的UIButton按钮动画,可以自定义button属性. 效果图: <ignore_js_op> 使用方法: 使用时把ButtonA ...
- android打不开ios分享微博,iOS集成新浪微博登录分享遇到的一些问题
一.-canOpenURL: failed for URL: "weibosdk://" - error: "This app is not allowed to que ...
最新文章
- 数据结构——马踏棋盘题解(贪心算法)
- LeetCode 213. 打家劫舍 II
- 基于组合遗传粒子群算法的旅行商问题求解
- 操作系统实验报告18:硬盘柱面访问调度算法
- Java Executors(线程池)
- 解决 error: Your local changes to the following files would be overwritten by merge:XXXX
- python面试题之Fibonacci数列
- MFC9.0 Outlook控件的标题显示无法改动
- javaweb(08) jsp(了解)
- 941. 有效的山脉数组
- Bailian2950 摘花生【贪心】
- .Net MVC缓存
- c语言现代程序设计 现代方法_红河分局加强水文现代化新技术、新仪器、新方法的使用和创新...
- 怎么用计算机弹植物大战僵尸,[原创] CE基础-自动汇编:植物大战僵尸之子弹回旋...
- 自然语言处理之语言模型(LM)
- androidStudio中通过svn版本控制后整个工作空间代码变成红色或者绿色
- JavaScript——onblur事件失效问题解决方案
- 关于Three.js 加载地面贴图的坑
- 七剑下天山,独领自动化测试技术
- 【语音控制SU-03T的使用】
热门文章
- 小程序 跳转tabBar页面闪一下的问题
- xtu p1049 最少步数
- kivy实现屏幕切换
- 无法启动承载网络。 组或资源的状态不是执行请求操作的正确状态,解决办法。(转)...
- linux jlink软件安装,linux下jlink安装
- android不死service,Android面试题-Service不死之身-Go语言中文社区
- ACM必学 C/C++文件输入输出利器—freopen函数
- 多路由器串联以及动态获取ip
- 最简单最有用的英文口语
- 选择比努力更重要,I am not aN idiot