Parallel.$(Action action1, Action action2...)
action1 與 action2 ...同時進行
例子:
Parallel.$( RotateTo.$(360, 1),FadeIn.$(1),ScaleTo.$(1, 1, 1))
RotateTo.$(float rotation, float duration) 變化相對於錨點actor 中的(originX,originY)
rotation --------旋轉絕對的度數
duration --------盡力的時間
RotateBy.$(float rotation, float duration)
rotation --------旋轉相對的度數 原來基礎上+
duration --------盡力的時間
MoveTo.$(float x, float y, float duration) x,y爲左下點座標 actor 中的(x,y)
x ------高變爲原來的幾倍
y ------寬變爲原來的幾倍
duration ------變化經歷多長時間
MoveTo.$(30, 30, 0.5f)
FadeOut.$(float duration) //幾秒內消失
例子:FadeOut.$(5)
FadeIn.$(float duration) //幾秒內出現
例子:FadeIn.$(1)
FadeTo.$(float alpha, float duration) //幾秒內變模糊 alpha:0 消失 1 出現
Delay.$(Action action, float duration) //把一個action 延遲幾秒
例子:
ction actionMoveBy = MoveBy.$(50, 50, 0.5f)
Delay.$(actionMoveBy, 10)
Repeat.$(Action action, int times) //把一個action 重複幾次
例子:
Repeat.$(Sequence.$(MoveBy.$(50, 0, 1), MoveBy.$(0, 50, 1), MoveBy.$(-50, 0, 1), MoveBy.$(0, -50, 1)), 3)
Remove.$() 刪除所有action
//複製一個action例子:
Action action = MoveBy.$(0, 50, 1);
Action action2 = action.copy();
//action完成後的監聽處理
1.創建一個監聽
OnActionCompleted listener = new OnActionCompleted() {
@Override public void completed (Action action) {
System.out.println("complete...");}
};
2.設置監聽 MoveBy.$(50, 50, 0.5f).setCompletionListener(listener );
// actor -- img, action----- action1 , stage ----- stage1
img.action(action1);
stage.addActor(img);
stage.act(Math.min(Gdx.graphics.getDeltaTime(), 1 / 30f));
stage.draw()