Android 弹簧动画效果
一、概述
Rebound 通过胡克定律,实现的一个类似“弹簧”动画效果的第三方工具包,由FaceBook退出,于2013年10月正式发布,旨在解决笨重、缓慢的传统移动网络界面。
先上几张效果图:
特点:
Rebound 可以使你的动画看起来像真实自然,像真实世界物理运动
Rebound 不是一个物理引擎库,但是Rebound可以使用弹簧动力来驱动各种各样的动画
Rebound使用和Origami(iOS的)相同的弹簧系数,方便实用。
并且可以和Material Design的设计原则呼应,可用于滚动条、切换开关、呼叫等场景下
二、如何使用
1.首先添加Rebound库依赖
- 如果你使用Android studio,那么恭喜你,你可以直接添加gradle依赖,相比其他方法简便许多
[java] view plaincopy
- dependencies {
- compile 'com.facebook.rebound:rebound:0.3.6'
- }
- 下载Reboud Jar文件,导入工程
- 添加Maven依赖
[java] view plaincopy
- <dependency>
- <groupId>com.facebook.rebound</groupId>
- <artifactId>rebound</artifactId>
- <version>0.3.6</version>
- </dependency>
2.创建一个SpringSystem对象
![](https://code.csdn.net/assets/CODE_ico.png)
- SpringSystem mSpringSystem = SpringSystem.create();
3.添加一个“弹簧”到系统
![](https://code.csdn.net/assets/CODE_ico.png)
- Spring mSpring = mSpringSystem.createSpring();
4.添加监听器
![](https://code.csdn.net/assets/CODE_ico.png)
- mSpring.addListener(this);
- //实现SpringListener接口,需要实现下面方法
- @Override
- public void onSpringUpdate(Spring spring) {
- }
- @Override
- public void onSpringAtRest(Spring spring) {
- }
- @Override
- public void onSpringActivate(Spring spring) {
- }
- @Override
- public void onSpringEndStateChange(Spring spring) {
- }
当然还可以实现简单的监听
![](https://code.csdn.net/assets/CODE_ico.png)
- spring.addListener(new SimpleSpringListener() {
- @Override
- public void onSpringUpdate(Spring spring) {
- // You can observe the updates in the spring
- // state by asking its current value in onSpringUpdate.
- }
- });
5.设置动画结束值
![](https://code.csdn.net/assets/CODE_ico.png)
- mSpring.setEndValue(1f);
6.在弹簧更新数据是对图片进行对应伸缩
![](https://code.csdn.net/assets/CODE_ico.png)
- public void onSpringUpdate(Spring spring) {
- float value = (float) spring.getCurrentValue();
- float scale = 1f - (value * 0.5f);
- mImageToAnimate.setScaleX(scale);
- mImageToAnimate.setScaleY(scale);
- }
通过上面几个步骤可以很方便的实现弹簧阻尼效果的图片伸缩
参考
Fackbook Rebound
Rebound Api
胡克定律(Hooks’ law)
直接拿来用!Facebook移动开源项目大合集
Android 弹簧动画效果相关推荐
- Android m 自定义下拉菜单,Android实现动画效果的自定义下拉菜单功能
我们在购物APP里面设置收货地址时,都会有让我们选择省份及城市的下拉菜单项.今天我将使用Android原生的 Spinner 控件来实现一个自定义的下拉菜单功能,并配上一个透明渐变动画效果. 要实现的 ...
- Android 吸入动画效果详解(仿mac退出效果)
转载自:http://m.blog.csdn.net/blog/leehong2005/9127095 [转]Android 吸入动画效果详解 1,背景 吸入(Inhale)效果,最初我是在iOS上面 ...
- android Loading动画效果
Android Loading动画效果 现在项目不是很忙,所以想不能闲着,研究一下大神们是如何实现等待框中的动画显示的,之前看着效果那么帅,那么酷.比猫画虎的写了写代码. 首先在res文件夹下新建一 ...
- android 三维动画效果,9款令人惊叹的HTML5 3D动画应用
原标题:9款令人惊叹的HTML5 3D动画应用 之前我们已经向大家分享了很多HTML5动画应用了,大部分都非常炫酷,也有一小部分是很实用的.今天我们要向各位HTML5动画爱好者介绍更多的HTML5 3 ...
- android ui动画效果怎么做,AndroidUI 布局动画-为列表添加布局动画效果
新建一个Android project ,使MainActivity 继承自 ListActivity: public class MainActivity extends ListActivity ...
- Android Animation动画效果简介
AlphaAnimation 淡入淡出动画 <alpha>A fade-in or fade-out animation. Represents an AlphaAnimation. a ...
- android 圆动画效果,Android实现任意绕圆或椭圆旋转的动画——SatelliteAnimator使用介绍...
话说实习也就快一个月了,虽然没干什么活,但是这几天总算是有一些可以写的东西. 代码中应该还存在很多问题要修改,大神们请赐教,不胜感激. 开始正题. 关于Android实现任意绕圆或椭圆旋转动画,我称之 ...
- android 退出 动画效果,Activity进入和退出动画的实现
关于acitvity进入和退出动画可以在代码动态设置animation,也可以在主题设置style. 这里以activity从底部弹出和向下退出的动画效果为例. activity.overridePe ...
- Android弹簧动画 Rebound实战
转载请注明出处:http://blog.csdn.net/ym4189/article/details/77099881 前言 之前需要做一个弹簧效果的动画,网上一看,大家都用Rebound框架,这里 ...
最新文章
- 6万车主使用智能驾驶不给钱,理想汽车竟然还说越多越好?
- 计算机汉字救亡运动简史丨视频
- 秒表项目_【速看】2021年陕西中考体育怎么考?中考体育项目及考试评分标准最全整理来了!...
- JAVA——基于HttpClient的全国大学英语四、六级考试(CET4CET6)[2019年下半年]查询DEMO
- python开发基本流程_第一阶段:Python开发基础 day06 Python基础语法入门--流程控制(二)...
- 请假打游戏!《艾尔登法环》发售当天褒贬不一 宫崎英高跌落神坛了?
- 【论文】基于特定实体的文本情感分类总结(PART II)
- 用了这些浏览器插件,让你的科研效率飞起
- 如何评价伊隆·马斯克创办的脑机接口公司 Neuralink ?
- NVIDIA NGC镜像使用笔记
- 服务器mgmt口监控协议,服务器如何查看mgmt地址
- python共存_多版本Python共存的配置方法
- win10内存占用率过高怎么办_DNF:WIN10玩DNF卡顿,内存占用过高的解决方法
- AnyMP4 iPhone Transfer Pro Mac破解教程
- 广告传媒实际税负怎么计算_文化传媒 广告行业企业怎么来合法节税,税收案例展示...
- arduino/Mixly使用ZH03BPM2.5传感器
- 中国石油大学《社会学概论》第二次在线作业
- 黑马程序员_终于找全了,Eclipse使用技巧!!!
- 人脸识别毕业设计python_25 行 Python 代码毕业设计实现人脸识别
- 嵌入式Linux驱动笔记(二十九)------内存管理之伙伴算法(Buddy)分析
热门文章
- Python与R协同完成【中国裁判文书网】文书内容爬取
- 三、Python学习(二)海龟模块turtle画笔介绍及命令详解(画圆)
- 荧光标记肿瘤细胞-让肿瘤细胞无处遁形
- python 动物分类_python入门学习之knn分类
- Mysql数据库调优——分区
- 用html制作房产,盖房子.html
- ICCV2021:Spatially-Adaptive Image Restoration using Distortion-Guided Networks
- 【虚拟试衣论文笔记】Towards Scalable Unpaired Virtual Try-On via Patch-Routed Spatially-Adaptive GAN
- 邓普顿教你逆向投资(三)多种方法评估价值
- C++实现Codeup中1011: 软件版本