NLDClient-yudde/ProjectNLD/Assets/Code/Scripts/HotUpdate/UI/TempUIHandle.cs

48 lines
1.4 KiB
C#

using Cysharp.Threading.Tasks;
using PhxhSDK.AOT.VersionUpdate;
using UnityEngine;
namespace Code.Scripts.HotUpdate.UI
{
public class TempUIHandle : IVersionUpdateUI
{
public TempUIHandle()
{
TempUpdateUI.instance.m_DialogObj.SetActive(false);
TempUpdateUI.instance.m_ProgressObj.SetActive(false);
}
public async UniTask<bool> ShowDialog(string title,
string content)
{
TempUpdateUI.instance.m_DialogObj.SetActive(true);
TempUpdateUI.instance.isClickOk = false;
TempUpdateUI.instance.m_TextTitle.text = title;
TempUpdateUI.instance.m_TextContent.text = content;
while (TempUpdateUI.instance.m_DialogObj.activeSelf)
{
await UniTask.DelayFrame(1);
}
return TempUpdateUI.instance.isClickOk;
}
public void UpdateProgress(float progress)
{
TempUpdateUI.instance.m_ProgressObj.SetActive(true);
TempUpdateUI.instance.m_SliderProgress.value = progress;
}
public void UpdateProgressText(string text)
{
TempUpdateUI.instance.m_ProgressObj.SetActive(true);
TempUpdateUI.instance.m_TextProgress.text = text;
}
public void CloseAll()
{
Object.Destroy(TempUpdateUI.instance.gameObject);
}
}
}