基本用法
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);//目标值,时间