private void RemovChat(UInt64 arg1) { GameObject tempObj = null; if (arg1 == 0) { return; } ClearOld(); if (TalkChatName.TryGetValue(arg1, out tempObj)) { if (TalkChatName.Count <= 0) { mLastTemp = 0; mLastObj = null; } else { mLastTemp = TalkChatName.ElementAt(0).Key; mLastObj = TalkChatObj[TalkChatName.ElementAt(0).Value]; if (TalkChatObj.ContainsKey(tempObj)) { UnityEngine.GameObject.DestroyImmediate(TalkChatObj[tempObj].objParent); TalkChatObj[tempObj] = null; TalkChatObj.Remove(tempObj); } } Refresh(); TalkChatName[arg1] = null; TalkChatName.Remove(arg1); mChatTaskNameGrid.repositionNow = true; mChatTaskNameGrid.Reposition(); } }
//窗口控件初始化 protected override void InitWidget() { mLastObj = null; CloseChat = mRoot.Find("CloseBtn").gameObject; MsgInfo = mRoot.Find("ChatWindow/InputArea").GetComponent <UIInput>(); SendMsgInfo = mRoot.Find("ChatWindow/SendMSg").gameObject; mChatTaskNameGrid = mRoot.Find("ChatList/Panel/Grid").GetComponent <UIGrid>(); TalkTable = mRoot.Find("ChatWindow/Scroll View/Table").GetComponent <UITable>(); ScrollView = mRoot.Find("ChatWindow/Scroll View").GetComponent <UIScrollView>(); ScrollBar = mRoot.Find("ChatWindow/Control - Simple Vertical Scroll Bar").GetComponent <UIScrollBar>(); ScrollMemBer = mRoot.Find("ChatList/Control - Simple Vertical Scroll Bar").GetComponent <UIScrollBar>(); UIEventListener.Get(CloseChat).onClick += CloseChatPress; UIEventListener.Get(SendMsgInfo).onClick += SendChatPress; bool isTure = false; if (mLastObj != null || FriendManager.Instance.AllTalkDic.Count < 1) { CreateMember(mLastTemp); } else { foreach (var item in FriendManager.Instance.AllTalkDic.Values) { if (item.SGUID == mLastTempNew) { isTure = true; continue; } GameObject gameObj = null; if (item.NickName == null && string.IsNullOrEmpty(item.NickName)) { continue; } if (TalkChatName.TryGetValue(item.SGUID, out gameObj)) { if (IsVisable && TalkChatObj.ContainsKey(gameObj)) { TalkChatObj[gameObj].mTwinkle.SetActive(true); } continue; } if (item.TalkState == MsgTalkEnum.UnReadMsg) { isReadInfo = false; } else { isReadInfo = true; } CreateMember(item.SGUID); } if (mLastTempNew != 0 && (isTure || !FriendManager.Instance.AllTalkDic.ContainsKey(mLastTempNew))) { isReadInfo = true; CreateMember(mLastTempNew); } ChatTaskCtrl.Instance.SetNewChat(); } }
void Refresh() { GameObject obje = null; foreach (var item in FriendManager.Instance.AllTalkDic.Values) { if (TalkChatName.TryGetValue(item.SGUID, out obje)) { if (item.TalkState == MsgTalkEnum.UnReadMsg) { TalkChatObj[obje].mTwinkle.SetActive(!isReadInfo); } else if (item.TalkState == MsgTalkEnum.ReadMsg) { TalkChatObj[obje].mTwinkle.SetActive(isReadInfo); } } } ChatTaskCtrl.Instance.SetNewChat(); }
bool isCreate(UInt64 temp) { GameObject gameObj = null; if (temp == 0) { return(false); } if (TalkChatName.TryGetValue(temp, out gameObj)) { if (IsVisable && TalkChatObj.ContainsKey(gameObj)) { TalkChatObj[gameObj].mTwinkle.SetActive(true); } return(false); } //if (mLastObj != null && IsVisable) //{ // mLastObj.mHighlight.SetActive(false); // mLastObj = null; //} return(true); }