using FairyGUI; using UI.Launcher; using UnityEngine; namespace GFGGame { public class HealthAdviceView { private static HealthAdviceView m_Instance = null; /// /// 单例 /// public static HealthAdviceView Instance { get { if (m_Instance == null) { m_Instance = new HealthAdviceView(); } return m_Instance; } } private UI_HealthAdviceUI _ui; /// /// 每1%耗时,单位秒 /// private const float SPEED = 0.01f; /// /// 界面是否打开状态 /// private bool isOpen = false; /// /// FairyGUI包名 /// private string _packageName; #region private private void Dispose() { UIPackage.RemovePackage("UI/" + _packageName); _ui.Dispose(true); _ui = null; } #endregion public HealthAdviceView() { _packageName = UI_HealthAdviceUI.PACKAGE_NAME; UIPackage.AddPackage("UI/" + _packageName + "/" + _packageName); _ui = UI_HealthAdviceUI.Create(); _ui.target.MakeFullScreen(); _ui.target.AddRelation(GRoot.inst, RelationType.Size); } /// /// 打开界面 /// public void Open() { if (isOpen) { return; } GRoot.inst.AddChild(_ui.target); isOpen = true; } /// /// 关闭界面 /// /// public void Close(bool toDestroy = false) { if (!isOpen) { return; } isOpen = false; _ui.target.RemoveFromParent(); if (toDestroy) { Dispose(); } } } }