public override void OnHide() { base.OnHide(); m_choose_btn.RemoveClickCallBack(OnToggle); MessageHandler.UnRegisterMessageHandler(MessageDefine.SCTitleActiveResponse, OnResponse); m_curTitle = null; m_currentState = false; }
private int CompareTitle(TitleMsg msg01, TitleMsg msg02) { long msgFinishTime1 = msg01.GetTime; long msgFinishTime2 = msg02.GetTime; if (msgFinishTime1 < msgFinishTime2) { return(1); } if (msgFinishTime1 == msgFinishTime2) { return(0); } return(-1); }
private void OnRespone(object obj) { if (obj == null) { return; } if (obj is SCTitleResponse) { SCTitleResponse res = (SCTitleResponse)obj; if (res.Status == null) { ////后面优化吧 List <ConfTitle> titleArray = CompareTitle(res); //List<ConfTitle> titleArray = ConfTitle.array; //m_grid_con.Clear(); m_grid_con.EnsureSize <TitleComponent>(titleArray.Count); for (int i = 0; i < titleArray.Count; i++) { TitleComponent title = m_grid_con.GetChild <TitleComponent>(i); title.Visible = true; bool isLock = true; TitleMsg titleMsg = null; bool isChoose = false; for (int j = 0; j < res.Titles.Count; j++) { if (titleArray[i].id == res.Titles[j].TitleId) { isLock = false; titleMsg = res.Titles[j]; if (titleMsg.TitleId == m_chooseID) { isChoose = true; m_curTitleMsg = title; } break; } } title.SetData(titleArray[i], titleMsg, isChoose, isLock); } } } }
public void SetData(ConfTitle confTitle, TitleMsg title, bool isChoose, bool isLock) { if (confTitle == null) { Visible = false; return; } this.m_detailLab.Text = LocalizeModule.Instance.GetString(confTitle.info); m_curTitle = title; if (confTitle != null) { m_Name_lab.Text = LocalizeModule.Instance.GetString(confTitle.name); List <RankData> rankdatas = PlayerTitleHelper.GetRandData(confTitle.benefit); m_addition_lab[0].Visible = false; m_addition_lab[1].Visible = false; for (int i = 0; i < 2; i++) { if (i < rankdatas.Count) { m_addition_lab[i].Text = LocalizeModule.Instance.GetString(string.Format("RankType_{0}", rankdatas[i].type), rankdatas[i].value); m_addition_lab[i].Visible = !isLock; } } m_desc_lab.Text = LocalizeModule.Instance.GetString(confTitle.source); } m_icon_img.Sprite = confTitle.icon; bool active = !isLock; m_mask_img.Visible = !active; m_lock_img.Visible = !active; m_desc_lab.Visible = !active; m_currentState = isChoose; m_choose_btn.Enable = active; m_Expired_lab.Visible = false; m_Name_lab.color = m_oriColor; m_addition_lab[0].color = m_oriColor; m_addition_lab[1].color = m_oriColor; m_TimeLab.Visible = false; if (active) //是否已拥有 { long nowTicks = CommonTools.DateTimeToTimeStamp(System.DateTime.Now) / 10000; if (title.Deadline > 0) { if (title.Deadline < nowTicks) { m_TimeLab.Visible = false; //过期 m_Name_lab.color = m_grayColor; m_addition_lab[0].color = m_grayColor; //m_additionNum01_lab.color = m_grayColor; m_addition_lab[1].color = m_grayColor; //m_additionNum02_lab.color = m_grayColor; m_bg_img.SetGray(true); m_icon_img.SetGray(true); m_Expired_lab.Visible = true; m_choose_btn.Enable = false; } else { DateTime deadTime = CommonTools.TimeStampToDateTime(title.Deadline * 10000); if (deadTime != null) { m_TimeLab.Text = CommonTools.SecondToTitleString((deadTime - DateTime.Now).TotalSeconds); } m_TimeLab.Visible = true; } } } m_require_img.Visible = m_currentState; }