public override void Release(bool depthRelease = true) { base.Release(depthRelease); if (m_ctor_AchievementScrollView != null) { m_ctor_AchievementScrollView.Release(depthRelease); } if (mSecondTabCreator != null) { mSecondTabCreator.Release(depthRelease); } if (dailyAchieveDataList != null) { dailyAchieveDataList.Clear(); } if (achieveDic != null) { achieveDic.Clear(); } if (m_uintDic != null) { m_uintDic.Clear(); } m_uint_activeFType = 0; m_uint_activeStype = 0; if (null != previousGrid) { previousGrid.SetSelect(false); previousGrid = null; } }
private void OnGridUIEventDlg(UIEventType eventType, object data, object param) { switch (eventType) { case UIEventType.Click: if (data is UICtrTypeGrid) { UICtrTypeGrid tabGrid = data as UICtrTypeGrid; SetSelectFirstType((uint)tabGrid.ID); if (m_uintDic.ContainsKey((uint)tabGrid.ID)) { if (m_uintDic[(uint)tabGrid.ID].Count > 0) { SetSelectSecondType(m_uintDic[(uint)tabGrid.ID][0], true); } } } if (data is UIAchievemenGrid) { UIAchievemenGrid achieveGrid = data as UIAchievemenGrid; if (null != achieveGrid) { SetSelectAchievementGrid(achieveGrid.index); } } if (data is UISecondTypeGrid) { UISecondTypeGrid sec = data as UISecondTypeGrid; SetSelectSecondType(sec.Data); } break; } }
private void OnUpdateGridData(UIGridBase grid, int index) { if (grid is UICtrTypeGrid) { UICtrTypeGrid tabGrid = grid as UICtrTypeGrid; if (tabGrid != null) { if (index == 0) { int haveNum = 0; int totalNum = 0; achievementManager.GetGainAchieveNum(out haveNum, out totalNum); string titleTips = "综合"; tabGrid.SetRedPointStatus(achievementManager.HaveCanReceiveAchieveByType((uint)index)); if (index < mlstFirstTabIds.Count) { tabGrid.SetData(mlstFirstTabIds[index], titleTips, 0); } } else { AchievementDataBase achievementData = achievementManager.GetParentAchievementData(index); if (achievementData != null) { int haveNum = 0; int totalNum = 0; int count = 0; if (achieveDic.ContainsKey((uint)index)) { count = achieveDic[(uint)(index)].Count; } achievementManager.GetGainAchieveByType(achievementData.type, out haveNum, out totalNum); string titleTips = string.Format("{0}({1}/{2})", achievementData.typeName, haveNum, totalNum); tabGrid.SetRedPointStatus(achievementManager.HaveCanReceiveAchieveByType((uint)index)); if (index < mlstFirstTabIds.Count) { tabGrid.SetData(mlstFirstTabIds[index], titleTips, count); } } } } } else if (grid is UIAchievemenGrid) { UIAchievemenGrid achieveGrid = grid as UIAchievemenGrid; if (null != achieveGrid) { AchieveData achieveData = dailyAchieveDataList.Count > index ? dailyAchieveDataList[index] : null; achieveGrid.UpdateItemInfo(achieveData); achieveGrid.SetGridData(index); achieveGrid.SetSelect(false); } } }
void SetSelectAchievementGrid(int index, bool force = false) { if (null != m_ctor_AchievementScrollView) { if (null != previousGrid) { previousGrid.SetSelect(false); } m_ctor_AchievementScrollView.FocusGrid(index); UIAchievemenGrid grid = m_ctor_AchievementScrollView.GetGrid <UIAchievemenGrid>(index); if (null != grid) { grid.SetSelect(true); } previousGrid = grid; } }