using System.Collections.Generic; using Excel2Json; using Fort23.Core; using Fort23.UTool; namespace Fort23.Mono { [UIBinding(prefab = "DaoYouPanel")] public partial class DaoYouPanel : UIPanel { List daoYouWidgets = new List(); private void Init() { isAddStack = true; IsShowAppBar = true; } protected override void AddEvent() { } protected override void DelEvent() { } public override void AddButtonEvent() { } public override CTask GetFocus() { AppBarPanel.OpenPanel(this); return base.GetFocus(); } public async override CTask AsyncInit(object[] uiData) { DaoyouModelConfig[] daoyouModelConfigs = ConfigComponent.Instance.GetAll(); foreach (var daoyouModelConfig in daoyouModelConfigs) { DaoYouWidget daoYouWidget = await UIManager.Instance.CreateGComponent(null, Content); daoYouWidget.CustomInit(daoyouModelConfig.ID); daoYouWidget.OnClick = OnClick; daoYouWidgets.Add(daoYouWidget); } return await base.AsyncInit(uiData); } private void OnClick(ItemWidgetBasic obj) { DaoYouWidget daoYouWidget = obj as DaoYouWidget; if(daoYouWidget._daoYouData == null) return; DaoYouInfoPanel.OpenPanel(daoYouWidget._daoYouData); } public static async CTask OpenPanel() { await UIManager.Instance.LoadAndOpenPanel(null); } public override void Close() { foreach (var daoYouWidget in daoYouWidgets) { UIManager.Instance.DormancyGComponent(daoYouWidget); } daoYouWidgets.Clear(); base.Close(); } } }