/// <summary> /// 用每组的最后一条数据 生成banner /// </summary> /// <param name="index">活动的key</param> /// <param name="cell"></param> private void UpdateBannerItem(int index, RectTransform cell) { ActivityItem _bannerItemData = cell.GetComponent <ActivityItem>(); if (_bannerItemData == null) { _bannerItemData = cell.gameObject.AddComponent <ActivityItem>(); } _bannerItemData.SetOnClick(SetItemImageLight); List <int> _List = m_MergeData[m_TeamKeyList[index]]; for (int j = 0; j < m_ActivityBannerData.Count; j++) { if (m_ActivityBannerData[j]._ActivityOverviewData.m_id == _List[_List.Count - 1]) { ActivityBannerData temp = m_ActivityBannerData[j]; _bannerItemData.SetActivityDate(temp._ActivityOverviewData, temp.m_Key); GameactivityTemplate _Data = (GameactivityTemplate)DataTemplate.GetInstance().m_GameactivityTable.getTableData(temp._ActivityOverviewData.m_id); if (m_TeamId == _Data.getTeam()) { _bannerItemData.SetImageLight(true); } else { _bannerItemData.SetImageLight(false); } RefreshItem(_bannerItemData, temp._ActivityOverviewData.m_id); } } }
/// <summary> /// 遍历比较好的id 合并Ieam相同的id /// 所有在开启时间内的活动都要显示 不管有没有数据 /// 服务器返回的数据 只是开启活动的数据 没有开启的也要显示 所以有了 m_ActivityBannerData /// </summary> public void SelectTeam() { m_ActivityBannerData.Clear(); for (int i = 0; i < m_OpenActivityID.Count; i++) { ActivityBannerData temp = new ActivityBannerData(); if (m_ActivityOverviewMar.m_ActivityOverviewData.ContainsKey(m_OpenActivityID[i])) { temp._ActivityOverviewData = m_ActivityOverviewMar.m_ActivityOverviewData[m_OpenActivityID[i]]; temp.m_Key = m_OpenActivityID[i]; } else { ActivityOverviewData _ActivityOverviewData = new ActivityOverviewData(); _ActivityOverviewData.m_id = m_OpenActivityID[i]; temp.m_Key = m_OpenActivityID[i]; temp._ActivityOverviewData = _ActivityOverviewData; } m_ActivityBannerData.Add(temp); GameactivityTemplate _gt = (GameactivityTemplate)DataTemplate.GetInstance().m_GameactivityTable.getTableData(m_OpenActivityID[i]); if (m_MergeData.ContainsKey(_gt.getTeam())) { List <int> _temp = m_MergeData[_gt.getTeam()]; _temp.Add(_gt.getId()); m_MergeData[_gt.getTeam()] = _temp; } else { List <int> _temp = new List <int>(); _temp.Add(_gt.getId()); m_MergeData.Add(_gt.getTeam(), _temp); } } //foreach (KeyValuePair<int, List<int>> kvp in m_MergeData) //{ // Debug.Log("m_MergeData.key" + kvp.Key); //} }