弹性动画
来源:互联网 发布:linux搭建java环境 编辑:程序博客网 时间:2024/06/05 03:10
弹性动画是使用Facebook推出的rebound 如/yj何使用呢?我们首先要在build.gradle中引入依赖 compile‘com.facebook.rebound:rebound:0.3.8’
图片布局
<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.bwie.tantiaodonghua.MainActivity"> <ImageView android:id="@+id/iv" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:src="@mipmap/ic_launcher" /></RelativeLayout>
代码如下
package com:.bwie.tantiaodonghua;
import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.ImageView;import com.facebook.rebound.SimpleSpringListener;import com.facebook.rebound.Spring;import com.facebook.rebound.SpringConfig;import com.facebook.rebound.SpringSystem;public class MainActivity extends AppCompatActivity { private ImageView iv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);
//找控件 iv = (ImageView) findViewById(R.id.iv);
//设置点击事件 iv.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) {
//点击调用该方法 onScaleAnimationBySpringWayTwo(); } }); }
//使用rebound我们需要初始化springsystem对象和spring对象。通过spring 我们可以设置动画的属性的初始值,结束值。spring需要添加一个springlistener接口,
代码中我用的simplespringlistener 是 springlistenter的实现类 private void onScaleAnimationBySpringWayTwo(){ SpringSystem springSystem=SpringSystem.create(); Spring spring=springSystem.createSpring(); spring.setCurrentValue(1.0f);//初始值 spring.setSpringConfig(new SpringConfig(60,4)); spring.addListener(new SimpleSpringListener(){ @Override public void onSpringUpdate(Spring spring) { super.onSpringUpdate(spring); float currentValue= (float) spring.getCurrentValue(); iv.setScaleX(currentValue); iv.setScaleY(currentValue); } }); spring.setEndValue(1.8f);//结束值 }}
通过源码可以发现构造函数接受两个变量:tension(拉力)friction(摩擦力),作用:tension拉力越大,弹性越大,friction摩擦力越大,弹性效果越小
阅读全文
0 0
- 弹性动画
- 弹性动画
- 弹性动画
- 弹性动画
- 弹性动画~~~~ EasingFunction
- POP弹性动画效果
- 安卓仿 ios 弹性动画 。
- css弹性动画效果
- 使用动画完成弹性滑动
- Facebook的弹性动画浅析
- JavaScript 动画之弹性运动
- html5 canvas创建弹性碰撞动画
- svg动画实现弹性侧栏菜单
- andorid上拉下拉弹性动画效果
- Facebook Rebound 弹性动画库 源码分析
- 用Swift实现一个弹性动画
- Android ListView上下滑动弹性动画
- iOS进阶之编写弹性动画
- 事务
- ArrayAdapter适配
- 客户端跳转与服务器端跳转的区别
- 对单选框多选框下拉框的绑定及选取操作
- 849852_十里桃花主管:网站目录收录的好处
- 弹性动画
- 双链表--简单操作
- 求字符串中不重复的最长子串的长度
- jquery实现table动态添加行、删除行以及行的上移和下移
- 测试文章发送
- 请求方式+imageloaderl
- 设备分配
- Linux软RAID实现
- 自己修改, jquery实现table动态添加行、删除行以及行的上移和下移