using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using ZXKFramework; public class WorkBtn : UIBase { public override string Name => "WorkBtn"; public override string GroupName => UIGroupLiao.WorkBtn.ToString(); Dictionary dic = new(); GameModel gameModel; public List btnList = new(); public override void HandleEvent(string name, object data){} public override void Init(IUIManager uictrl) { base.Init(uictrl); gameModel = GetModel(); } public override void ShowData(params object[] obj) { base.ShowData(obj); foreach (var loData in gameModel.mainData.GetMainDataList()) { if (loData.ModuleName == gameModel.mainData.GetModuleName(gameModel.GetId())) { if (!string.IsNullOrEmpty(loData.SubModuleName)) { if (!dic.ContainsKey(loData.SubModuleName)) { dic.Add(loData.SubModuleName, loData.id); } else { if(dic[loData.SubModuleName] > loData.id) { dic[loData.SubModuleName] = loData.id; } } } } } } public override void Show() { base.Show(); Transform loBenParent = transform.FindFirst("WorkBtnData"); Game.Instance.objectPool.Unspawn("SubModuleBtnBase"); foreach (var item in dic) { Game.Instance.objectPool.Spawn("SubModuleBtnBase", loBenParent, m => { btnList.Add(m.transform); m.transform.localScale = Vector3.one; m.FindFirst("Text").text = item.Key; Button loBtn = m.GetComponent