//更新当前邮件信息 private void UpdateCurrentMailHandler(object sender, int code) { MailGetInfoMsg_12_2 currentMailItemInfo = Singleton <MailMode> .Instance.MailInfoVo.CurrentMailItemInfo; if (code == MailMode.UPDATE_CURRENTMAIL) { if (!Singleton <MailMode> .Instance.MailInfoVo.IsOpenAttachView) { setOnekeyBtnState(false); mailViewTP.PlayForward(); Singleton <MailAttachmentView> .Instance.openView(); } for (int i = 0; i < mailItemContainerList.Count; i++) { if (mailItemContainerList[i].Id == currentMailItemInfo.mailId) { MailItem mailItem = mailItemList[i]; PMailBasicInfo mailBasicInfo = MailUtil.findMailDataByID(currentMailItemInfo.mailId); mailItem.SetItemInfo(mailBasicInfo); Singleton <MailAttachmentView> .Instance.setItemInfo(currentMailItemInfo); break; } } } }
public void SetItemInfo(PMailBasicInfo info) { mailBaseInfo = info; setMailTitleAndTime(); setMailState(); setMailAttach(); }
//设置每封邮件信息 private void setEveryMailInfo(ItemContainer mailItemContainer, PMailBasicInfo info) { MailItem mailItem = new MailItem(); mailItem.Init(mailItemContainer.gameObject); mailItem.SetItemInfo(info); mailItemList.Add(mailItem); }
//邮件列表数据 private void mailListData(PMailBasicInfo info) { for (int i = 0; i < mailListInfoVo.MailList.Count; i++) { PMailBasicInfo mailBasicInfo = mailListInfoVo.MailList[i]; if (!mailInfoVo.MailIdList.Contains(info.id)) { mailListInfoVo.MailList.Add(info); break; } } }
//根据ID查询出当前邮件信息 public static PMailBasicInfo findMailDataByID(uint id) { MailBoxListVo mailListInfoVo = Singleton <MailMode> .Instance.MailListInfoVo; for (int i = 0; i < mailListInfoVo.MailList.Count; i++) { PMailBasicInfo mailBasicInfo = mailListInfoVo.MailList[i]; if (mailBasicInfo.id == id) { return(mailBasicInfo); } } return(null); }
//销毁 public void Dispose() { timeLabel.text = ""; titleLabel.text = ""; unReadTag.text = ""; mailBaseInfo = null; checkBox.value = false; checkBox.SetActive(false); giftIcon.SetActive(false); readTag.SetActive(false); ReadBackground.SetActive(false); UnReadBackground.SetActive(false); SelectedBackground.SetActive(false); }
//成功领取附件奖励 private void GetAwardSuccessHandler(object sender, int code) { if (code == MailMode.GETAWARD_SUCCESS) { MailGetInfoMsg_12_2 currentMailItemInfo = Singleton <MailMode> .Instance.MailInfoVo.CurrentMailItemInfo; Singleton <MailAttachmentView> .Instance.setItemInfo(currentMailItemInfo); for (int i = 0; i < mailItemContainerList.Count; i++) { if (mailItemContainerList[i].Id == currentMailItemInfo.mailId) { MailItem mailItem = mailItemList[i]; PMailBasicInfo mailBasicInfo = MailUtil.findMailDataByID(currentMailItemInfo.mailId); mailItem.SetItemInfo(mailBasicInfo); break; } } } }
/// <summary> /// 更新邮件列表 /// </summary> public void SetUpdateMailList(List <PMailBasicInfo> mailBasicInfo) { if (mailListInfoVo.MailList.Count == 0) { mailListInfoVo.MailList = mailBasicInfo; } else { for (int i = 0; i < mailListInfoVo.MailList.Count; i++) { PMailBasicInfo info = mailListInfoVo.MailList[i]; mailInfoVo.MailIdList.Add(info.id); } foreach (PMailBasicInfo info in mailBasicInfo) { mailListData(info); } } mailListInfoVo.MailList.Sort(MailUtil.SortMailList); UpdateMailList(); }
/// <summary> /// 邮件列表时间排序 /// </summary> public static int SortMailList(PMailBasicInfo x, PMailBasicInfo y) { return((int)(y.sendTime - x.sendTime)); }
public void read(MemoryStream msdata) { code = proto_util.readUShort(msdata); totalCount = proto_util.readUByte(msdata); PMailBasicInfo.readLoop(msdata, mailList); }