using CG.Framework; using CG.UTility; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; /******************************************************************************* *Create By CG *Function *******************************************************************************/ namespace ZXK.GYJQR { public class HomePanel : UIBase { private Transform _curSelect = null; protected override void Awake() { base.Awake(); InitHomePanel(); } private void InitHomePanel() { foreach (EnumCtrl.SystemType item in System.Enum.GetValues(typeof(EnumCtrl.SystemType))) { if (item != EnumCtrl.SystemType.None) { if ((int)item > 2) return; Transform itemTran = transform.Find("SystemGroup/" + (int)item); itemTran.Find("SystemItemPic").GetComponent().sprite= Resources.Load(ConstCtrl.RSC_Folder_SYSTEMLOGOPATH + EnumCtrl.GetEnumDescription(item)); ButtonExtension itemBtn = null; if (!itemTran.TryGetComponent(out itemBtn)) { itemBtn = itemTran.gameObject.AddComponent(); } itemBtn.onCover.AddListener(() => { BtnSelectState(itemTran); }); itemBtn.onExit.AddListener(() => { BtnResetState(itemTran); }); itemBtn.onClick.AddListener(() => { _curSelect = itemTran; GameManager.Instance.ChangeType((EnumCtrl.SystemType)int.Parse(itemTran.name)); GameManager.Instance._StateContext.SetState( new ModelSelectState(GameManager.Instance._StateContext)); }); } } } private void BtnSelectState(Transform itemBtn) { itemBtn.Find("SystemItemBgSelect").gameObject.SetActive(true); itemBtn.Find("SystemNameTxt").GetComponent().color = Color.white; } private void BtnResetState(Transform itemBtn) { itemBtn.Find("SystemItemBgSelect").gameObject.SetActive(false); itemBtn.Find("SystemNameTxt").GetComponent().color = Color.black; } private void OnDisable() { BtnResetState(_curSelect); } } }