介绍一下开源项目FastAnimationWithPOP
介绍一下开源项目FastAnimationWithPOP
JUL 23RD, 2014
这是一个非常easy的动画框架,基于Facebook的POP库。
使用它你就能够在故事版中以0行代码的代价来加入动画了。
Github上地址是 这里.
你能够从这里下载DEMO查看效果.
假设你认为不错,欢迎在到这里点个赞,方便让很多其它人注意到它

功能
- 使用属性来加入一个动画到随意的View。
- 在nib或者故事版唤醒时自己主动运行动画。
- 也能够随时手动运行动画。
- 控制动画的细节。
- 给control绑定一些动画。比如按下松开等状态。
- 轻松的扩展新的动画,仅仅须要实现
FastAnimationProtocol、ControlFastAnimationProtocol和FastAnimationReverseProtocol这几个协议.
环境要求
iOS SDK: iOS 6.0+
XCode版本号: 5.0+
怎样安装
最好的办法是使用CocoaPods:
加入这行到你的
podfile文件pod
'FastAnimation'安装更新
pod
install
假设想要尝试最新的版本号。你能够加入这个pod.
'FastAnimation', :head
使用指导
1. 在故事板里使用
你能够通过设置用户自己定义执行时属性(user defined runtime attributes)给View加入一个动画。


以下是一些属性的含义:
UIView的属性
animationType
通过这个属性来指定动画的类型,能够是完整的类名,也能够省略
FAAnimation前缀.delay
运行动画的延时。以秒为单位。
animationParams
这个是各个动画的灵活參数。你能够从动画类的头文件里找到信息,比如以下:
1 |
|
startAnimationWhenAwakeFromNib
定义是否须要在故事板唤醒的时候就运行动画,默认是
YES。
UIControl的属性
bindingAnimationType
通过这个属性来指定控件动画的类型。能够是完整的类名。也能够省略
FAAnimation前缀.
2. 代码写View的应用
在代码写View中使用FastAnimation相同方便。
你能够设置动画类型等属性。然后运行-就可以。就像这样:
(void)startFAAnimation
1 |
|
还有这些扩展的使用方法:
1 |
|
3. 定义一个新的动画扩展
轻松的扩展新的动画,仅仅须要实现FastAnimationProtocol、ControlFastAnimationProtocol 和 FastAnimationReverseProtocol这几个协议.
就像这样:
1 |
|
4. 一些控制动画的操作
- 停止动画:
假设想要手动体制。使用以下的方法:
1 |
|
- 嵌套动画:
使用例如以下方法处理嵌套:
1 |
|
眼下已经拥有的动画:
- 反弹动画(4方向):
BounceLeft,BounceRight,BounceUp,BounceDown - 放大动画(2方向):
ZoomInX,ZoomInY - 颤动动画
- 组动画
- 放大动画
- Button的放大效果绑定
- 很多其它的动画等着大家的贡献哟。
下一步要做的事
- 把DEMO和库项目和到同一个Workspace里。
- 制作很多其它更好看的DEMO。
- 假如便捷的转场动画。眼下先设法支持iOS7+
- 确保全部的功能都含有单元測试。
- 很多其它更好的动画。
- 把核心部分和效果部分分离,效果依照iOS5 6 7+来打成不同的包.
- 支持Swift写扩展.
Posted by 臧成威 Jul
23rd, 2014
介绍一下开源项目FastAnimationWithPOP的更多相关文章
- 给各位聚聚和大大介绍一个开源项目 Expression2Sql(转)
阅读目录 一.Expression2Sql介绍 二.单表简单查询 三.Where条件 四.多表关联查询 五.group by 六.order by 七.函数 八.delete 删除 九.update ...
- GitHub上史上最全的Android开源项目分类汇总 (转)
GitHub上史上最全的Android开源项目分类汇总 标签: github android 开源 | 发表时间:2014-11-23 23:00 | 作者:u013149325 分享到: 出处:ht ...
- GitHub上史上最全的Android开源项目分类汇总
今天在看博客的时候,无意中发现了 @Trinea 在GitHub上的一个项目 Android开源项目分类汇总 ,由于类容太多了,我没有一个个完整地看完,但是里面介绍的开源项目都非常有参考价值,包括很炫 ...
- 用开源项目SwitchButton实现各种风格的switch
今天介绍的开源项目是否的优秀,又是国人的作品.之前我接触过很多很多的自定义switch,有些动画僵硬,有些不能自定义switch的宽度,有些只能定义宽度不能设置滑块的宽高.但,这个项目提供了各种定制的 ...
- Android 上传开源项目到 jcenter 实战踩坑之路
本文微信公众号「AndroidTraveler」首发. 背景 其实 Android 上传开源项目到 jcenter 并不是一件新鲜事,网上也有很多文章. 包括我本人在将开源项目上传到 jcenter ...
- Equinox开源项目CQRS架构分析
CQRS架构下Equinox开源项目分析 一.DDD分层架构介绍 本篇分析CQRS架构下的Equinox开源项目.该项目在github上star占有2.4k.便决定分析Equinox项目来学习下CQR ...
- Android开源项目分类汇总-转载
太长了,还是转载吧...今天在看博客的时候,无意中发现了@Trinea在GitHub上的一个项目Android开源项目分类汇总,由于类容太多了,我没有一个个完整地看完,但是里面介绍的开源项目都非常有参 ...
- 开源项目|Go 开发的一款分布式唯一 ID 生成系统
原文连接: 开源项目|Go 开发的一款分布式唯一 ID 生成系统 今天跟大家介绍一个开源项目:id-maker,主要功能是用来在分布式环境下生成唯一 ID.上周停更了一周,也是用来开发和测试这个项目的 ...
- 支持中文!秒建 wiki 知识库的开源项目,构建私人知识网络
不知道有没有人和我一样,觉得自建的东西是互联网上的"自留地".私人空间,有一种自己的一亩三分地随心所欲的痛快. 比如自建的博客想写什么随笔就写什么,不用取悦读者可以自娱自乐:再比如 ...
随机推荐
- 使用html+css+js实现3D相册
使用html+css+js实现3D相册,快来上传的照片吧 效果图: 代码如下,复制即可用: <!DOCTYPE html> <html lang="en"> ...
- WinScp几个极大提高开发效率的小功能
WinSCP 是一个 Windows 环境下使用 SSH 的开源图形化 SFTP 客户端.同时支持 SCP 协议.它的主要功能就是在本地与远程计算机间安全的复制文件. 最近研究了一下winscp的一些 ...
- Fedora下Eclipse/MyEclipse崩溃的解决方案
Fedora19下使用myeclipse2013时,打开不到一分钟就异常关闭. 默认在home目录下生成一个log文件,里面显示的错误信息,说是libsoup.so文件导致出错.第一个想法是删除这个文 ...
- CentOS6.5配置rsyslog
如何在RHEL 6.5安装和配置rsyslog现在7.6版本/ CentOS的6.5 .The情况是,安装和RHEL / CentOS的6.5安装rsyslog现在集中式日志服务器上.所有的客户端服务 ...
- CF 586A 找1的个数和101的个数
Sample test(s) input 50 1 0 1 1 output 4 input 71 0 1 0 0 1 0 output 4 input 10 output 0 # include & ...
- centos killall安装
https://blog.csdn.net/joeyon1985/article/details/46707865 https://blog.csdn.net/xupeng874395012/arti ...
- 面试题46:求1+2+ …… +n
题目:求1+2+…+n,要求不能使用乘除法.for.while.if.else.switch.case等关键字以及条件判断语句(A?B:C). 通常求1+2+…+n除了用公式n(n+1)/2之外,无外 ...
- ASP.NET MVC之验证终结者篇
有时候我觉得,很多人将一个具体的技术细节写的那么复杂,我觉得没有必要,搞得很多人一头雾水的,你能教会别人用就成了,具体的细节可以去查MSDN什么的,套用爱因斯坦的名言:能在网上查到的就不要去记,用的时 ...
- 收集Nginx的json格式日志(五)
一.配置nginx [root@linux-node1 ~]# vim /etc/nginx/nginx.conf #修改日志格式为json格式,并创建一个nginxweb的网站目录 log_form ...
- Jersey入门二:运行项目
1.项目有了,在终端窗口进入项目的根目录(即 \simple-service ) 2.现在先测试运行下: mvn clean test  项目将会被编译,并且进行单元测试  上面可以看看到测试通过 ...