标签:view nal aspect 原理 keyword key 状态 dir 分享
Rebound
是一个来自 Facebook 公司的 Java物理和动画库。Rebound spring 模型可用于创建动画,让你感觉很自然。
Rebound
拥有两个参数:tension
、friction
。
tension
是张力,拉力。friction
是摩擦力。tension
:50,friction
:1tension
:50,friction
:15MainActivity
关键代码
/**
* 弹簧动画
*
* @param v 动画View
* @param from 开始参数
* @param to 结束参数
* @param tension 拉力系数
* @param friction 摩擦力系数
*/
private void animateViewDirection(final View v, float from, float to, int tension, int friction) {
//从弹簧系统创建一个弹簧
Spring spring = springSystem.createSpring();
//设置弹簧的开始参数
spring.setCurrentValue(from);
//查看源码可知
//public static SpringConfig defaultConfig = fromOrigamiTensionAndFriction(40.0D, 7.0D);
//弹簧的默认拉力是40,摩擦是7。这里设置为我们seekBar选择的拉力和摩擦参数
spring.setSpringConfig(SpringConfig.fromOrigamiTensionAndFriction(tension, friction));
//给弹簧添加监听,动态设置控件的状态
spring.addListener(new SimpleSpringListener() {
@Override
public void onSpringUpdate(Spring spring) {
//设置图片的X,Y的缩放
//还可以设置setAlpha,setTranslationX...综合形成复杂的动画
v.setScaleX((float) spring.getCurrentValue());
v.setScaleY((float) spring.getCurrentValue());
}
});
//设置结束时图片的参数
spring.setEndValue(to);
}
然而你们觉得
看看github大牛用rebound做的动画
Github:Rebound Github
官网:Rebound
coding公开项目地址:https://git.coding.net/fanming/rebound-demo.git
标签:view nal aspect 原理 keyword key 状态 dir 分享
原文地址:http://www.cnblogs.com/ldq2016/p/7079822.html