Android 弹簧动画效果

原创 2015年04月26日 22:43:33

一、概述

Rebound 通过胡克定律,实现的一个类似“弹簧”动画效果的第三方工具包,由FaceBook退出,于2013年10月正式发布,旨在解决笨重、缓慢的传统移动网络界面。

先上几张效果图:

               

         


特点:
Rebound 可以使你的动画看起来像真实自然,像真实世界物理运动
Rebound 不是一个物理引擎库,但是Rebound可以使用弹簧动力来驱动各种各样的动画
Rebound使用和Origami(IOS的)相同的弹簧系数,方便实用。
并且可以和Material Design的设计原则呼应,可用于滚动条、切换开关、呼叫等场景下

二、如何使用

1.首先添加Rebound库依赖

  • 如果你使用Android studio,那么恭喜你,你可以直接添加gradle依赖,相比其他方法简便许多
    dependencies {
      compile 'com.facebook.rebound:rebound:0.3.6'
    }

  • 下载Reboud Jar文件,导入工程
  • 添加Maven依赖 
    <dependency>
      <groupId>com.facebook.rebound</groupId>
      <artifactId>rebound</artifactId>
      <version>0.3.6</version>
    </dependency>

2.创建一个SpringSystem对象

SpringSystem mSpringSystem = SpringSystem.create();

3.添加一个“弹簧”到系统

	
Spring mSpring = mSpringSystem.createSpring();

4.添加监听器

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) {
}

当然还可以实现简单的监听

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.设置动画结束值

mSpring.setEndValue(1f);

6.在弹簧更新数据是对图片进行对应伸缩

public void onSpringUpdate(Spring spring) {
    float value = (float) spring.getCurrentValue();
    float scale = 1f - (value * 0.5f);
    mImageToAnimate.setScaleX(scale);
    mImageToAnimate.setScaleY(scale);
}

通过上面几个步骤可以很方便的实现弹簧阻尼效果的图片伸缩


参考

用Visual C++开发数据库应用程序

用Visual C++开发数据库应用程序EMAIL:zzh1415@21cn.com1、 概述1、1 Visual C++开发数据库技术的特点Visual C++提供了多种多样的数据库访问技术——OD...
  • zzh
  • zzh
  • 2000-08-09 17:04:00
  • 995

Rebound-Android的弹簧动画库

简介官方网站githubRebound是facebook出品的一个弹簧动画库,与之对应的IOS版本有一个pop动画库,也是非常的强大给力。Facebook真是互联网企业中的楷模,开源了很多的实用开源库...
  • hanhailong726188
  • hanhailong726188
  • 2016-02-18 17:18:09
  • 17558

Android SpringAnimation 弹簧动画

前言 下午在掘金上看到了Android终于出了弹簧动画,马不停蹄的撸起代码,研究一下这个小家伙。毕竟ios的弹簧效果已经出来很久了。话不多说,先上效果图。效果图配置环境1. compile 'com...
  • u011277821
  • u011277821
  • 2017-03-19 18:22:54
  • 460

android listview仿iphone弹簧特效

IOS常见视图有一个弹性回退的动画效果,Android 从2.3开始实现了下冲到底部和上冲到底部时颜色渐变动画效果。View类有两个很重要的方法scrollTo和scrollBy,允许移动视图的可见区...
  • linghu_java
  • linghu_java
  • 2011-10-14 16:12:36
  • 10156

android 仿ios带弹簧效果的ScrollView

仿ios弹簧效果
  • sunxiaogang0214
  • sunxiaogang0214
  • 2016-08-26 17:49:22
  • 1797

android 实现阻尼效果

/* * Copyright (C) 2006 The Android Open Source Project * * Licensed under the Apache License, Ve...
  • muzitest
  • muzitest
  • 2015-05-13 19:12:03
  • 2330

Android自定义View阻尼动画&贝塞尔曲线的实现

package com.example.administrator.myapplication.customview; import android.animation.Animator; impo...
  • szqsdq
  • szqsdq
  • 2016-12-14 23:45:52
  • 1176

Rebound动画框架简单介绍

Rebound动画框架简单介绍android菜鸟一枚,有不对的地方希望大家指出,谢谢。 最近在接手了一个老项目,发现里面动画框架用的是facebook中的Rebound框架,由于以前没听说过,...
  • u013762572
  • u013762572
  • 2016-05-22 14:27:30
  • 2757

Facebook的弹性动画浅析

Facebook Rebound Android弹性动画库 源码分析 字数1588 阅读1302 评论1 喜欢16 Rebound源码分析 对于想体验一下rebound的效果,又...
  • garyhu1
  • garyhu1
  • 2016-12-22 09:53:32
  • 289

让动画活过来---Robound

ReBound 是一个Java类库,以弹簧的动力学模型 上图:
  • u011282069
  • u011282069
  • 2015-04-03 21:20:31
  • 1896
收藏助手
不良信息举报
您举报文章:Android 弹簧动画效果
举报原因:
原因补充:

(最多只允许输入30个字)