libgdx的ui库可以实现一些动画效果,但是做游戏来说可能有些不足。Universal Tween Engine是一个纯java实现的动画库。
地址:http://code.google.com/p/java-universal-tween-engine/
只要能够用float表示的一切java对象它可以让它动画化,可以使用于Libgdx、Android、Swing等等。
使用Universal Tween Engine最重要的一个步骤就是实现TweenAccessor接口,这个接口定义了getValues和setValues方法。
然后Engine中注册对应的接口。然后定义一些动画效果并添加到管理器中。最后用update方法更新时间。
具体的可以参考一下Wiki:http://code.google.com/p/java-universal-tween-engine/wiki/GetStarted
我比较喜欢使用Stage,所以下面的例子都是Stage中的。
首先实现TweenAccessor接口,我没有区分对待,比如给Image写一个,再给Button写个啥的。我直接给Actor写了一个,这样都可以用。
getValues和setValues中我定义了3中操作:只修改X值;只修改Y值;修改X和Y值。
这里注意一下getValues的返回值,你修改或者操作了几个值就返回几。