private void SwitchUI(FRIEND_UI_TOGGLE_TYPE type_) { m_friend_info_list_root.Visible = false; m_friend_application_root.Visible = false; m_friend_confirm_root.Visible = false; m_add_friend_root.Visible = false; m_gift_root.Visible = false; m_recommend_btn.Visible = false; switch (type_) { case FRIEND_UI_TOGGLE_TYPE.Added: m_friend_info_list_root.Visible = true; break; case FRIEND_UI_TOGGLE_TYPE.Agreeing: m_friend_application_root.Visible = true; break; case FRIEND_UI_TOGGLE_TYPE.Addinfo: m_friend_confirm_root.Visible = true; break; case FRIEND_UI_TOGGLE_TYPE.gift: m_gift_root.Visible = true; break; case FRIEND_UI_TOGGLE_TYPE.scarch: { m_add_friend_root.Visible = true; m_recommend_btn.Visible = true; m_recommend_tips.Visible = false; } break; } }
private void OnToggleClick(bool val_, int id_) { if (val_) { if (-1 != m_last_toggle_id) EngineCoreEvents.AudioEvents.PlayAudio.SafeInvoke(Audio.AudioType.UISound, EngineCommonAudioKey.table_change.ToString()); if (m_last_toggle_id == id_) return; m_last_toggle_id = id_; FRIEND_UI_TOGGLE_TYPE cur_type = (FRIEND_UI_TOGGLE_TYPE)id_; SwitchUI(cur_type); if (FRIEND_UI_TOGGLE_TYPE.Added == cur_type || FRIEND_UI_TOGGLE_TYPE.Addinfo == cur_type || FRIEND_UI_TOGGLE_TYPE.Agreeing == cur_type) { GameEvents.UIEvents.UI_Friend_Event.OnRefreshFriendPage.SafeInvoke((FriendReqType)id_); this.Refresh(cur_type); } else if (FRIEND_UI_TOGGLE_TYPE.gift == (FRIEND_UI_TOGGLE_TYPE)id_) { this.ShowGiftView(); } } }
public void Refresh(FRIEND_UI_TOGGLE_TYPE type_) { //this.SwitchUI(type_); ShowConfirmRedPoint(FriendDataManager.Instance.Last_apply); ShowApplyRedPoint(PlayerPrefTool.GetIsThereNewApply()); m_recommend_btn.Visible = false; if (FRIEND_UI_TOGGLE_TYPE.Added == type_ || FRIEND_UI_TOGGLE_TYPE.Addinfo == type_ || FRIEND_UI_TOGGLE_TYPE.Agreeing == type_) { int temp_type = (int)type_; Dictionary<long, PlayerFriendMsg> datas = FriendDataManager.Instance.GetDatas((FriendReqType)temp_type); if (FRIEND_UI_TOGGLE_TYPE.Added == type_ && m_friend_info_list_root.Visible) { if (null == datas) { m_friend_info_grid.Clear(); return; } List<PlayerFriendMsg> friends = new List<PlayerFriendMsg>(datas.Values); friends.Sort((a, b) => { if (a.Level > b.Level) return -1; else return 1; }); m_friend_info_grid.EnsureSize<FriendInfoItemUI>(friends.Count); for (int i = 0; i < m_friend_info_grid.ChildCount; ++i) { m_friend_info_grid.GetChild<FriendInfoItemUI>(i).Visible = false; m_friend_info_grid.GetChild<FriendInfoItemUI>(i).Visible = true; m_friend_info_grid.GetChild<FriendInfoItemUI>(i).Refresh(friends[i]); } m_friend_num_text.Text = string.Format("{0}/{1}", friends.Count, FriendDataManager.Instance.Max_friend_num); m_recommend_btn.Visible = 0 == friends.Count; m_recommend_tips.Visible = m_recommend_btn.Visible; } else if (FRIEND_UI_TOGGLE_TYPE.Agreeing == type_ && m_friend_application_root.Visible) { if (m_application_switch.Checked != FriendDataManager.Instance.Is_receive_application) m_application_switch.Checked = FriendDataManager.Instance.Is_receive_application; if (null == datas || 0 == datas.Count) { m_friend_application_grid.Clear(); m_ignore_all_btn.Enable = false; m_ignore_all_btn.SetGray(true); return; } m_ignore_all_btn.Enable = true; m_ignore_all_btn.SetGray(false); List<PlayerFriendMsg> friends = new List<PlayerFriendMsg>(datas.Values); friends.Sort((a, b) => { if (a.StatusTime > b.StatusTime) return -1; else return 1; }); m_friend_application_grid.EnsureSize<FriendApplicationItemUI>(friends.Count); for (int i = 0; i < m_friend_application_grid.ChildCount; ++i) { m_friend_application_grid.GetChild<FriendApplicationItemUI>(i).Visible = false; m_friend_application_grid.GetChild<FriendApplicationItemUI>(i).Visible = true; m_friend_application_grid.GetChild<FriendApplicationItemUI>(i).Refresh(friends[i]); } } else if (FRIEND_UI_TOGGLE_TYPE.Addinfo == type_ && m_friend_confirm_root.Visible) { if (null == datas) { m_friend_confirm_grid.Clear(); return; } List<PlayerFriendMsg> friends = new List<PlayerFriendMsg>(datas.Values); friends.Sort((a, b) => { if (a.StatusTime > b.StatusTime) return -1; else return 1; }); m_friend_confirm_grid.EnsureSize<FriendConfirmItemUI>(friends.Count); for (int i = 0; i < m_friend_confirm_grid.ChildCount; ++i) { m_friend_confirm_grid.GetChild<FriendConfirmItemUI>(i).Visible = false; m_friend_confirm_grid.GetChild<FriendConfirmItemUI>(i).Visible = true; m_friend_confirm_grid.GetChild<FriendConfirmItemUI>(i).Refresh(friends[i]); } } } else if (FRIEND_UI_TOGGLE_TYPE.gift == type_) { m_gift_root.Refresh(); } }