01.OnComplete
//動畫完成之後的回調OnComplete
this.transform.DOMove(Vector3.one*2, 2f).OnComplete(() =>
{
Debug.Log("動畫完成");
});
02.其他常用的
//this.transform.DOMove(Vector3.one * 2, 2f).OnStart();
//this.transform.DOMove(Vector3.one * 2, 2f).Pause();
//this.transform.DOMove(Vector3.one * 2, 2f).OnPlay();
//this.transform.DOMove(Vector3.one * 2, 2f).OnKill();
// this.transform.DOMove(Vector3.one * 2, 2f).OnStepComplete();
this.transform.DOMove(Vector3.one * 2, 2f).OnUpdate(() =>
{
Debug.Log(222);
});
//動畫重新調用的時候觸發
//this.transform.DOMove(Vector3.one * 2, 2f).OnRewind(() =>
//{
// Debug.Log("22");
//});
this.transform.DOMove(Vector3.one * 2, 2f);
//transform.DOPause();
//transform.DOPlay();
//transform.DORestart(); //重播
transform.DORewind(); //倒播
// transform.DOFlip();//翻轉
04.擷取資料
void Start()
{
this.transform.DOMove(Vector3.one * 2, 2f).SetId("ID").SetDelay(1);
擷取所有暫停的動畫
//var list1= DOTween.PausedTweens();
擷取所有播放的動畫
//var listPlay = DOTween.PlayingTweens();
查找ID下所有的動畫 //是否收集正在播放動畫
//var list2=DOTween.TweensById("ID");
參數 調用動畫的對象 是否收集正在播放動畫
//var list3= DOTween.TweensByTarget(transform,true);
//查找ID下的動畫 是否正在播放動畫
var list4 = DOTween.IsTweening("ID");
//所有正在播放動畫
var list5 = DOTween.TotalPlayingTweens();
}
05.擷取及修改動畫的執行時間
//fullPosition 動畫的執行時間
tweener = this.transform.DOMove(Vector3.one * 2, 2f).SetAutoKill(false);
tweener.SetDelay(1f);
Debug.Log(tweener.fullPosition);
//動畫執行完的次數
count = tweener.CompletedLoops();
06.擷取時間資料
//動畫的延遲時間
time =tweener.Delay();
//擷取動畫的持續時間 參數 是否包括循環時間
tweener.Duration();
//目前已經播放的時間 參數 是否包括循環時間
tweener.Elapsed();
//進度的百分比傳回動畫進度的百分比
//起始點為0 目标點為1 當yoyo循環模式下,值會從0變到1再從1變到0
rotate = tweener.ElapsedDirectionalPercentage();
//傳回動畫區間已用的百分比
//單次循環的數值為0到1
//參數為 是否包含循環 為true時 傳回值是循環總區間的已用百分比 若為無限循環 傳回值為0
tweener.ElapsedPercentage();
動畫是否在活動
tweener.IsActive();
是否是反向動畫
_tweener.IsBackwards();
動畫是否完成
_tweener.IsComplete();
是否以初始化
_tweener.IsInitialized();