/// <summary> /// 初始化控件 /// </summary> public void Init(LogDataVO dataVO) { if (m_Root == null) { m_Root = TransformUtil.FindUIObject <Transform>(transform, "Content"); } if (m_Icon == null) { m_Icon = TransformUtil.FindUIObject <Image>(transform, "Content/Image_Icon"); } if (m_OverlyingIcon == null) { m_OverlyingIcon = TransformUtil.FindUIObject <Image>(transform, "Content/Image_Icon2"); } if (m_Describe == null) { m_Describe = TransformUtil.FindUIObject <TMP_Text>(transform, "Content/Label_Sender"); } if (m_ReceiveTime == null) { m_ReceiveTime = TransformUtil.FindUIObject <TMP_Text>(transform, "Content/Label_LeftTime"); } m_LogDataVO = dataVO; SetContent(dataVO); }
/// <summary> /// 添加日志 /// </summary> /// <param name="id"></param> /// <param name="logDataVO"></param> public void AddLog(string id, LogDataVO logDataVO) { if (m_Logs.TryGetValue(id, out LogDataVO data)) { return; } m_Logs[id] = logDataVO; }
/// <summary> /// 创建一条日志数据 /// </summary> /// <param name="info"></param> private void CreatLog(LogDisplayInfo info) { LogDataVO m_LogDataVO = new LogDataVO(); m_LogDataVO.Id = info.log_id; m_LogDataVO.Tid = info.item_tid; m_LogDataVO.Num = info.item_count; m_LogDataVO.ReveiveTime = info.receive_time; GetLogProxy().AddLog(m_LogDataVO.Id, m_LogDataVO); }
public override void OnHide() { m_LastMailSelectVo = null; m_LastLogSelectVo = null; if (m_NewIds != null && m_NewIds.Count > 0) { NetworkManager.Instance.GetMailController().C_to_S_ClearNew(m_NewIds); } m_NewIds.Clear(); OwnerView.State.GetAction(UIAction.Mail_Retrieve).Callback -= GetAccessory; OwnerView.State.GetAction(UIAction.Mail_Empty).Callback -= DeleteAll; OwnerView.State.GetAction(UIAction.Mail_Delete).Callback -= DeleteMail; OwnerView.State.GetAction(UIAction.Mail_Mark).Callback -= SetMarkMail; State.OnSelectionChanged += OnSelectionChanged; base.OnHide(); }
protected override void OnCellRenderer(int groupIndex, int cellIndex, object cellData, RectTransform cellView, bool selected) { Animator m_Animator = cellView.GetComponent <Animator>(); if (m_Animator) { m_Animator.SetBool("IsOn", selected); } if (OwnerView.State.GetPageIndex() == 0) { MailDataVO m_MailVo = (MailDataVO)cellData; if (selected) { if (m_LastMailSelectVo != m_MailVo) { m_LastMailSelectVo = m_MailVo; NetworkManager.Instance.GetMailController().C_to_S_GetMailContent(m_LastMailSelectVo.Id); if (m_LastMailSelectVo.IsNew == 1) { RecordNewMail(m_LastMailSelectVo.Id); m_MailProxy.ClearMailNew(m_LastMailSelectVo.Id); } } object data = OwnerView.State.GetTipData(); OwnerView.State.SetTipData(null); OwnerView.State.SetTipData(data); SetMailState(); } MailTemplate m_MailTemplate = cellView.GetOrAddComponent <MailTemplate>(); m_MailTemplate.Init(m_MailVo, RecordNewMail); } else { LogDataVO m_LogVo = (LogDataVO)cellData; LogTemplate m_LogTemplate = cellView.GetOrAddComponent <LogTemplate>(); m_LogTemplate.Init(m_LogVo); if (selected) { m_LastLogSelectVo = m_LogVo; SetLogState(); } } }
/// <summary> /// 设置日志内容显示 /// </summary> private void SetContent(LogDataVO dataVO) { UIUtil.SetIconImage(m_Icon, TableUtil.GetItemIconBundle(dataVO.Tid), TableUtil.GetItemIconImage(dataVO.Tid)); UIUtil.SetIconImage(m_OverlyingIcon, TableUtil.GetItemIconBundle(dataVO.Tid), TableUtil.GetItemIconImage(dataVO.Tid)); Color m_QualityColor = ColorUtil.GetColorByItemQuality(TableUtil.GetItemQuality(dataVO.Tid)); string m_Name = TableUtil.GetItemName(dataVO.Tid); string m_ColorText = ColorUtil.AddColor(m_Name, m_QualityColor); string m_ShowText = ""; if (dataVO.Num > 1) { m_ShowText = string.Format(TableUtil.GetLanguageString("log_text_1011"), m_ColorText, dataVO.Num); } else { m_ShowText = string.Format(TableUtil.GetLanguageString("log_text_1010"), m_ColorText); } m_Describe.text = string.Format(m_ShowText); }