DoTween基本用法
阿新 • • 發佈:2018-11-14
基本用法
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;//引用
using DG.Tweening;
public class DoTweenText : MonoBehaviour {
private Image _myImage;
private Tween _myTween;
// Use this for initialization
private void Awake()
{
_myImage = transform.GetComponent<Image>();
}
void Start () {
#region 靜態方法使用
//DOTween.To(
// ()=>_myImage.color,//動畫要去改變的屬性值
// toColor=>_myImage.color=toColor,//DoTween每次經過計算的Alpha通道值 賦給 需要改變的物件
// new Color(0,0,0,0),2f//改變的目標值,動畫播放時間 2s
// );
#endregion
#region 直接用作當前物件
//Tween tween = transform.DOLocalMoveX(300, 0.5f);//0.5s內向X方向移動300
//tween.PlayForward();
//tween.PlayBackwards();
//不存在直接倒播情況
#endregion
#region 動畫的儲存和迴圈播放
//_myTween = transform.DOLocalMoveX(300, 0.5f);
//_myTween.SetAutoKill(false);//是否動態殺死
//_myTween.Pause();//暫停
#endregion
#region 動畫事件的註冊
Tween moveTween = transform.DOLocalMoveX(400, 2f);
moveTween.OnComplete(ColorHide);
#endregion
}
// Update is called once per frame
void Update () {
if (Input.GetMouseButtonDown(0))
{
_myTween.PlayForward();
}
if (Input.GetKeyDown(KeyCode.A))
{
_myTween.PlayBackwards();
}
}
private void ColorHide()
{
DOTween.To(
() => _myImage.color,
toColor => _myImage.color = toColor,
new Color(0, 0, 0, 0), 2f
);
}
}
彈窗樣式
把圖片Scale設定為0,0,0,並且點錨定按ALT鍵選右下角的填充螢幕
(注意引用Using UnityEngine.UI,Using DG.Tweening),定義,獲取元件
程式碼實現
transform.localScale = Vector3.zero;
transform.DOScale(1, 1f);//目標值,時間