Unity客户端架构-DialogManager
发表于2018-09-10
继续Unity客户端架构系列的介绍,上一篇中给大家介绍了BaseDialog的使用,这一篇我们就来看看DialogManager的使用。
using UnityEngine; using System.Collections; using System; public class DialogManager : MonoBehaviour { private Hashtable dialogs = new Hashtable(); public bool DialogExist(DialogType type) { return this.dialogs.ContainsKey(type); } public DialogInfo AddDialog(DialogType type) { DialogInfo dialogInfo = new DialogInfo(); dialogInfo.type = type; this.dialogs.Add(type, dialogInfo); return dialogInfo; } public void ResetDialog() { IDictionaryEnumerator enumerator = this.dialogs.GetEnumerator(); while (enumerator.MoveNext()) { DialogInfo dialoginfo = enumerator.Value as DialogInfo; dialoginfo.AsynState = AsynState.Completed; } } public DialogInfo GetDialogInfo(DialogType type) { if (!this.DialogExist(type)) { return this.AddDialog(type); } return this.dialogs[type] as DialogInfo; } public void RemoveDialog(DialogType type) { if (this.DialogExist(type)) { this.dialogs.Remove(type); } } public void ClearDialog() { this.dialogs.Clear(); } public Transform GetDialog(DialogType type) { if (type == DialogType.None) { return null; } string str = Util.ConvertPanelName(type); return io.Gui.transform.Find(str); } }
来自:https://blog.csdn.net/u013108312/article/details/52565174
Unity客户端架构系列教程