- 浏览: 5778731 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (890)
- WindowsPhone (0)
- android (88)
- android快速迭代 (17)
- android基础 (34)
- android进阶 (172)
- android高级 (0)
- android拾遗 (85)
- android动画&效果 (68)
- Material Design (13)
- LUA (5)
- j2me (32)
- jQuery (39)
- spring (26)
- hibernate (20)
- struts (26)
- tomcat (9)
- javascript+css+html (62)
- jsp+servlet+javabean (14)
- java (37)
- velocity+FCKeditor (13)
- linux+批处理 (9)
- mysql (19)
- MyEclipse (9)
- ajax (7)
- wap (8)
- j2ee+apache (24)
- 其他 (13)
- phonegap (35)
最新评论
-
Memories_NC:
本地lua脚本终于执行成功了,虽然不是通过redis
java中调用lua脚本语言1 -
ZHOU452840622:
大神://处理返回的接收状态 这个好像没有监听到 遇 ...
android 发送短信的两种方式 -
PXY:
拦截部分地址,怎么写的for(int i=0;i<lis ...
判断是否登录的拦截器SessionFilter -
maotou1988:
Android控件之带清空按钮(功能)的AutoComplet ...
自定义AutoCompleteTextView -
yangmaolinpl:
希望有表例子更好。。。,不过也看明白了。
浅谈onInterceptTouchEvent、onTouchEvent与onTouch
http://code.google.com/p/java-universal-tween-engine/
可以用来创建平滑的移动系统,比如循环,移动,旋转等。由于项目使用纯java写成,所以支持swt,swing,android,opengles等。Tween缓冲大家应该都不陌生,说白了就是从一起始位置逐渐移动到目标位置的过程,这个过程可以是加速移动,也可以是减速移动,这些不同的缓动方式就是Tween的各种ease。
源码在最后,将其解压后复制到src就可以了。
用法,先定义一个需要运动的物体:
然后,实现Tweenable接口,用于表明运动的返回值和变化值
最后,在Activity中运动:
可以用来创建平滑的移动系统,比如循环,移动,旋转等。由于项目使用纯java写成,所以支持swt,swing,android,opengles等。Tween缓冲大家应该都不陌生,说白了就是从一起始位置逐渐移动到目标位置的过程,这个过程可以是加速移动,也可以是减速移动,这些不同的缓动方式就是Tween的各种ease。
源码在最后,将其解压后复制到src就可以了。
用法,先定义一个需要运动的物体:
public class Particule { private float x, y; public float getX() { return x; } public float getY() { return y; } public void setX(float x) { this.x = x; } public void setY(float y) { this.y = y; } }
然后,实现Tweenable接口,用于表明运动的返回值和变化值
import aurelienribon.tweenengine.Tweenable; public class TweenableParticule implements Tweenable { // The following lines define the different possible tween types. // It's up to you to define what you need :-) public static final int X = 1; public static final int Y = 2; public static final int XY = 3; // Composition pattern private Particule target; // Constructor public TweenableParticule(Particule particule) { this.target = particule; } // Tweenable implementation @Override public int getTweenValues(int tweenType, float[] returnValues) { switch (tweenType) { case X: returnValues[0] = target.getX(); return 1; case Y: returnValues[0] = target.getY(); return 1; case XY: returnValues[0] = target.getX(); returnValues[1] = target.getY(); return 2; default: assert false; return 0; } } @Override public void onTweenUpdated(int tweenType, float[] newValues) { switch (tweenType) { case X: target.setX(newValues[0]); break; case Y: target.setY(newValues[1]); break; case XY: target.setX(newValues[0]); target.setY(newValues[1]); break; default: assert false; break; } } }
最后,在Activity中运动:
import android.app.Activity; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.os.Bundle; import android.view.View; import aurelienribon.tweenengine.Tween; import aurelienribon.tweenengine.TweenGroup; import aurelienribon.tweenengine.TweenManager; import aurelienribon.tweenengine.Tweenable; import aurelienribon.tweenengine.equations.*; import com.ql.test.Particule; import com.ql.test.TweenableParticule; /** * http://code.google.com/p/java-universal-tween-engine/ * @author admin * */ public class Screen4 extends Activity { Particule particule; TweenManager manager; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // setContentView(R.layout.screen_4); // Button btn_11=(Button)findViewById(R.id.btn_11); setContentView(new ScreenView(this)); // Let's say we are working with an Android target. We need to pool our objects. Tween.setPoolEnabled(true); // We also need a manager to handle every tween. manager = new TweenManager(); // We can now create as many interpolations as we need ! particule=new Particule(); particule.setX(100); particule.setY(100); Tweenable tweenParticle=new TweenableParticule(particule); Tween tween = Tween.to(tweenParticle, TweenableParticule.XY, 10000, Cubic.OUT).target(400, 500); manager.add(tween.start()); tween = Tween.to(tweenParticle, TweenableParticule.XY, 10000, Bounce.OUT).target(100, 500).delay(10000); manager.add(tween.start()); // TweenGroup tweenGroup=new TweenGroup().pack( // Tween.set(tweenParticle, TweenableParticule.XY), // Tween.to(tweenParticle, TweenableParticule.XY, 10000, Sine.OUT), // Tween.from(tweenParticle, TweenableParticule.XY, 10000, Sine.OUT), // Tween.to(tweenParticle, TweenableParticule.XY, 10000, Bounce.OUT) // ); // manager.add(tweenGroup.sequence().repeat(2,5000).start()); // TweenGroup tweenGroup= new TweenGroup().pack( // Tween.to(tweenParticle, TweenableParticule.XY, 500, Quad.INOUT).target(200), // Tween.to(tweenParticle, TweenableParticule.XY, 500, Quad.INOUT).target(100), // Tween.to(tweenParticle, TweenableParticule.XY, 500, Quad.INOUT).target(200).delay(1000) // ).sequence().start(); } @Override protected void onResume() { super.onResume(); } @Override protected void onPause() { super.onPause(); manager.clear(); } class ScreenView extends View{ Paint paint; public ScreenView(Context context) { super(context); // TODO Auto-generated constructor stub paint=new Paint(); paint.setAntiAlias(true); paint.setColor(Color.RED); paint.setStyle(Paint.Style.FILL_AND_STROKE); invalidate(); } @Override protected void onDraw(Canvas canvas) { // TODO Auto-generated method stub //super.onDraw(canvas); canvas.drawCircle(particule.getX(), particule.getY(), 20, paint); manager.update(); invalidate(); } } }
- aurelienribon.rar (16 KB)
- 描述: 动画库
- 下载次数: 215
- TweenEngine-lib-4.3.zip (29.7 KB)
- 描述: jar和源码
- 下载次数: 202
评论
3 楼
zhuruyi
2012-08-27
奇了怪了 为什么hg下载总是提示失败
2 楼
2006her
2012-03-09
感谢分享啊。
1 楼
wxw404
2011-11-01
谢谢收了 拿来用
发表评论
-
http://www.android-studio.org/
2018-08-06 09:25 0http://www.android-studio.org/ ... -
SlidingDrawer源码
2012-03-14 10:13 3777我把SlidingDrawer源码提了出来,希望对1.5的朋友 ... -
简单拖动效果(带Cache,需要完善)
2011-10-13 15:10 4183如何去实现一个具有幻象的拖拽效果? 所谓”幻象“就是当你按下去 ... -
Android Activity中启动另一应用程序的方法,无需得到类名
2011-08-02 14:46 17200在网上搜索了一会相关的实现代码,发现所有的文章都说是需要包名和 ... -
网上发现的一个android UI包
2011-05-24 12:21 4050里面有些UI和效果 -
android中使用代码启动其他程序
2011-04-29 23:15 5226你要訪問其他的程序,那麼這個程序要先裝載到模擬器或真機上面,因 ... -
listView背景问题以及限制editText字数以及如果想通知别人已经不能在写
2011-04-29 22:44 31621.在listView设置好背景之后 你如果点击空白出 你会发 ... -
Android键盘和触摸事件处理
2011-04-29 22:32 6967activity和VIEW都能接收触摸和按键,如果响应事件只需 ... -
Android的绘制文本对象FontMetrics的介绍及绘制文本
2011-04-29 22:29 11463一。Android绘制文本对象FontMetrics介绍 ... -
Android View 拖动&插入
2011-04-29 22:20 3508View 拖动&插入 即: 支持 拖动图标 然后 ... -
使TextView文本可以水平和垂直滚动
2011-04-29 21:59 14341在做一个小的电子书程序,要求电子书具有放大缩小的功能,所以肯定 ... -
ArrayAdapter源码
2011-04-29 12:29 6265看看人家怎么写的。 /* * Copyright (C ... -
Android下获取开机时间
2011-04-02 21:51 6188找了一圈没发现能得到开机启动时间资料,于是乎突发奇想,得到了解 ... -
AutoCompleteTextView连接到数据库
2011-03-30 20:49 4657AutoCompleteTextView可以根据输入 ... -
改变屏幕Brightness(亮度)
2011-03-30 12:48 4568http://www.eoeandroid.com/forum ... -
android 拖拽图片&拖动浮动按钮到处跑
2011-02-24 20:55 31706来自老外: import android.app.Acti ... -
拖动一个控件在另一个控件(layout)上,并固定位置在几个位置显示
2011-02-24 20:51 5854实现效果: 鼠标拖动btn SSS,SSS在水平的layo ... -
Handler与Message类,实现n秒后无操作自动消失功能
2011-02-24 20:45 4596实现功能:某控件不操作10秒后,自动消失。如照相机变焦条出现后 ... -
带删除按钮的ListView
2011-02-24 10:33 6115不用说了,上图先: import java.util.A ... -
android3.0之Action Bar基础
2011-02-22 17:12 6795http://www.android123.com.cn/an ...
相关推荐
Universal Tween Engine是一个纯java实现的动画库。 地址:http://code.google.com/p/java-universal-tween-engine/ 只要能够用float表示的一切java对象它可以让它动画化,可以使用于Libgdx、Android、Swing等等
java-universal-tween-engine
通用 Tween 引擎支持对来自任何 Java 项目(Swing、SWT、OpenGL 甚至基于控制台)中的任何对象的每个属性进行插值。 实现 TweenAccessor 接口,将其注册到引擎,并为您想要的任何内容设置动画! 在一行中,将您的...
tween-engineer 官方文档翻译成中文 官方地址 http://code.google.com/p/java-universal-tween-engine/
Android---Tween动画 运用了4种Tween的动画效果,包括: rotate(旋转),scale(伸缩), alpha(透明度),translate(平移) 以及tween(综合4种效果)
android开发中的Tween动画,动画演示demo。 此demo为android studio 2.0 所写.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
tween.js是一款可生成平滑动画效果的js动画库。tween.js允许你以平滑的方式修改元素的属性值。它可以通过设置生成各种类似CSS3的动画效果。
前端项目-es6-tween,ES6实现惊人的tween.js
一类是Tween动画,就是对场景里的对象不断的进行图像变化来产生动画效果(旋转、平移、放缩和渐变);第二类就是 Frame动画,即顺序的播放事先做好的图像,与gif图片原理类似。 本例子主要实现了Tweene动画,实现了...
tween动画,最新的,一个例子,大家可以参照下。
tween.js是一款可生成平滑动画效果的js动画库。tween.js允许你以平滑的方式修改元素的属性值。它可以通过设置生成各种类似CSS3的动画效果。
Android Tween动画源码,实现了android Tween动画的alpha、scale、translate、rotate四种效果
tween自动动画
博客地:http://blog.csdn.net/dmk877/article/details/51912104,详细讲解了Tween动画的用法。
相关博客见 http://blog.csdn.net/wzg_1987/article/details/8842661
android Tween动画的xml实现
tween 动画效果,图片的移动,渐隐,放大,旋转等效果
rc-tween-one ReactTweenOne组件 浏览器支持 IE 10以上 :check_mark: Chrome31.0+ :check_mark: Firefox 31.0+ :check_mark: Opera 30.0+ :check_mark: Safari 7.0以上 :check_mark: 发展 npm install npm ...
完整Tween动画缓动算法,值得学习一下