二、控制类
不同的表现类通过组合实现,我们就可以得到不同的动画效果,当然了,这就需要我们使用控制类来管理我们的表现类,控制类相对于表现类来说比较少,只有四个,即:Sequence 类、Repeat 类、Parallel 类、Forever 类。
(1) SequenceAction 类:按顺序执行Actions
SequenceAction alpha = Actions.sequence(Actions.fadeIn(duration), endAction );
参数传入的都是需要使用的Action,sequence他会按照传入的参数顺序,全部按顺序执行的。
(2) ParallelAction 类:并行执行传入的Action类
ParallelAction Paction = Actions.parallel(moveto, rotateto, alpha);
无论传入的先后如何,都是并行执行的,即同时执行的。
(3) RepeatAction 类:重复执行传入的Action。
RepeatAction repeatedAction = Actions.repeat(3, Paction);
(4) foreverAction 类:其实这个也是一个RepeateAction,只不过他的次数是无穷的,他所需要传入的是一个RepeatAction。
RepeatAction foreverAction = Actions.forever(RepeatAction);
传入的是一个重复Action,次数是无穷的,当时他的类型也是一个重复Action。
三、Run方法
所有Actions结束后,调用该方法,需要传入Runnable的一个方法。
这里为什么要单独拿出来一个Actions中的方法,单独解释呢?主要是因为这个方法很特别,他虽然也是是一个Action类,但是却封装在了Action类中,表面上看起来很另类,但是其实他是作者的一种经典思维的体现,那么下面我们就来学习下,这个Run方法。
功能用途:
run(java.lang.Runnable runnable)
Action endAction = Actions.run(new Runnable() { @Override public void run() { System.out.println("All action is completed"); } });
这个方法,他的用途就是在于,他是负责在所有动作结束后调用的,一般我们做游戏,在所有的动作结束后,需要执行一些我们想要的事件,例如弹出游戏结束的界面,或者一个窗口等等,这样我们就需要使用run方法,来实现这些功能,这也是0.98版本libgdx的一个改进,他删除了之前的compelet的一个接口,而使用了一二润方法,这样很简便,实用。
文章内容参考-奋斗小土豆丶的博文,特此说明!
Comments 1 条评论
值得借鉴!