YanCheng_Metrology/Assets/Scripts/Project/UI/UI_Panel/UI_MaskPanel.cs

50 lines
1.2 KiB
C#

using System.Collections;
using DG.Tweening;
using UnityEngine;
using UnityEngine.UI;
public class UI_MaskPanel : BasePanel
{
private float fateInTime = 1f;
private float intervalTime = 1f;
private float fateOutTime = 1f;
/// <summary>
/// 初始化
/// </summary>
public void Init()
{
var img = GetControl<Image>("Mask");
Color color = img.color;
color.a = 0;
img.color = color;
}
/// <summary>
/// 显示
/// </summary>
public override void ShowMe()
{
GameManager.EventMgr.AddEventListener(Enum_EventType.HideMask, HideMask);
}
/// <summary>
/// 隐藏面板
/// </summary>
public override void HideMe()
{
GameManager.EventMgr.RemoveEventListener(Enum_EventType.HideMask, HideMask);
}
private void HideMask()
{
var image = GetControl<Image>("Mask");
Sequence mySequence = DOTween.Sequence();
mySequence.Append(image.DOFade(1, fateInTime).SetEase(Ease.InOutQuad));
mySequence.AppendInterval(intervalTime);
mySequence.Append(image.DOFade(0, fateOutTime).SetEase(Ease.InOutQuad))
.OnComplete(() => { GameManager.UIMgr.HidePanel<UI_MaskPanel>(); });
}
}