DoTween回调函数汇总
OnComplete(TweenCallback回调)
指结束后开始调用
transform.
DOMove(new Vector3(0, 3f, 0), 1).
SetLoops(3, LoopType.Yoyo).
OnComplete(() => { Debug.Log("666"); });
OnStepComplete(TweenCallback回调)
完成单个循环开始调用
transform.
DOMove(new Vector3(0, 3f, 0), 1).
SetLoops(3, LoopType.Yoyo).
OnStepComplete(() => { Debug.Log("666"); });
最后会输出三次666。
OnKill(TweenCallback回调)
Sequence q = DOTween.Sequence();
q.Append(transform.DOMove(
new Vector3(0, 3f, 0), 2).
OnKill(() => { Debug.Log("666"); }));
q.Insert(1,
transform.DOMove(new Vector3(0, -1f, 0), 1));
q.Append(
transform.DOMove(new Vector3(0, 2f, 0), 3));
是指所有运动结束时,才触发。
最后结果为物体到达(0,2,0),才输出666;
OnPlay(TweenCallback回调)
transform.
DOMove(new Vector3(0, 3f, 0), 4).
OnPlay(() => { Debug.Log("666"); });
await Task.Delay(TimeSpan.FromSeconds(1));
transform.DOPause();
await Task.Delay(TimeSpan.FromSeconds(1));
transform.DOPlay();
每次从暂停状态恢复播放,会输出调用,最后输出两次666.
OnPause(TweenCallback回调)
transform.
DOMove(new Vector3(0, 3f, 0), 4).
OnPause(() => { Debug.Log("666"); });
await Task.Delay(TimeSpan.FromSeconds(1));
transform.DOPause();
当状态从播放变为暂停时将触发的回调,最后输出一次666.
OnStart(TweenCallback回调)
transform.
DOMove(new Vector3(0, 3f, 0), 3).
OnStart(() => { Debug.Log("666"); });
开始时调用,与OnPlay有所不同.不会因为暂停开始而调用
OnUpdate(TweenCallback回调)
transform.
DOMove(new Vector3(0, 3f, 0), 3).
OnUpdate(() => { Debug.Log("666"); });
每一帧调用。
OnRewind(TweenCallback回调)
transform.
DOMove(new Vector3(0, 3f, 0), 4).
OnRewind(() => { Debug.Log("666"); });
await Task.Delay(TimeSpan.FromSeconds(1));
transform.DORewind();
播放时到达起始位置时将触发,调用。最后输出一次666.。
DOSmoothRewind和DORewind和DOFlip都可以使物体返回运动。
DOTogglePause能结合DOPause和DOPlay两种方法。