private void ResetSelectRole() { UISelectRoleGrid roleGrid = GetRoleGridByIndex(m_iCurIndex); if (null != roleGrid) { roleGrid.SetSelect(false, false); } m_iCurIndex = -1; m_iPreIndex = -1; }
private void InitCharacterGrid() { m_lstGrids = new List <UISelectRoleGrid>(); m_rightDesTA = m_widget_DesWidget.GetComponent <TweenAlpha>(); m_dicProDes = new Dictionary <enumProfession, GameObject>(); if (null != m_trans_role_list && null != m_trans_UISelectRoleGrid) { Transform ts = null; UISelectRoleGrid roleGrid = null; GameObject cloneObj = null; lstRoleList = DataManager.Manager <LoginDataManager>().RoleList; Transform tempTs = null; for (int i = 0, max = m_professionList.Length; i < max; i++) { ts = m_trans_role_list.Find(m_professionList[i].ToString()); if (null != ts) { tempTs = GameObject.Instantiate(m_trans_UISelectRoleGrid);// UIManager.GetObj(GridID.Uiselectrolegrid); if (null == tempTs) { continue; } Util.AddChildToTarget(ts, tempTs); cloneObj = tempTs.gameObject; if (null != cloneObj) { roleGrid = cloneObj.GetComponent <UISelectRoleGrid>(); if (null == roleGrid) { roleGrid = cloneObj.AddComponent <UISelectRoleGrid>(); } } //roleGrid.SetData(i,GetRoleInfoByIndex(i)); roleGrid.RegisterUIEventDelegate(OnSelectRoleGridClick); roleGrid.SetGridData(i); m_lstGrids.Add(roleGrid); } ts = m_widget_DesWidget.cachedTransform.Find(m_professionList[i].ToString()); if (null != ts) { m_dicProDes.Add(m_professionList[i], ts.gameObject); } } } }
void OnSelectRoleGridClick(UIEventType eventType, object data, object param) { if (eventType == UIEventType.Click) { if (null != data && data is UISelectRoleGrid) { UISelectRoleGrid cGrid = data as UISelectRoleGrid; if (cGrid.Empty) { GoToCreateRole(); } else if (cGrid.Index != m_iCurIndex) { OnSelectRole(cGrid.Index); } } } }
public override void Release(bool depthRelease = true) { base.Release(depthRelease); if (null != m_lstGrids) { UISelectRoleGrid tempGrid = null; uint resID = (uint)GridID.Uiselectrolegrid; for (int i = 0; i < m_lstGrids.Count;) { tempGrid = m_lstGrids[i]; if (null == tempGrid) { i++; continue; } m_lstGrids.Remove(tempGrid); UIManager.ReleaseObjs(resID, tempGrid.CacheTransform); } m_lstGrids.Clear(); } }