DoTween常用动画效果

首先记得引入命名空间:using DG.Tweening;

1.渐隐渐现

    protected CanvasGroup canvasGroup;
    protected void Start()
    {
        if(canvasGroup == null)
        {
            canvasGroup = GetComponent<CanvasGroup>();
        }
    }
    /// <summary>
    /// 界面被显示出来。可设置显示界面动画
    /// </summary>
    public virtual  void OnEnter()
    {
        if (canvasGroup == null) canvasGroup = GetComponent<CanvasGroup>();
        canvasGroup.alpha = 0;
        canvasGroup.blocksRaycasts = true;
        canvasGroup.DOFade(1, .2f);
    }

2.左移右移

    public override void OnEnter()
    {
        if (canvasGroup == null) canvasGroup = GetComponent<CanvasGroup>();
        canvasGroup.alpha = 1;
        canvasGroup.blocksRaycasts = true;

        Vector3 temp = transform.localPosition;
        temp.x = 600;
        transform.localPosition = temp;
        transform.DOLocalMoveX(0, .3f);
    }

    public override void OnExit()
    {
        canvasGroup.blocksRaycasts = false;

        transform.DOLocalMoveX(600, .3f).OnComplete(() => canvasGroup.alpha = 0);
    }

3.由小变大

    public override void OnEnter()
    {
        if (canvasGroup == null) canvasGroup = GetComponent<CanvasGroup>();
        canvasGroup.alpha = 1;
        canvasGroup.blocksRaycasts = true;

        transform.localScale = Vector3.zero;
        transform.DOScale(0.5f, .3f);
    }

    public override void OnExit()
    {
        canvasGroup.blocksRaycasts = false;

        transform.DOScale(0, .3f).OnComplete(() => canvasGroup.alpha = 0);
    }

猜你喜欢

转载自blog.csdn.net/qq_40323256/article/details/86834307