public void OnInputFieldValueChange() { // 查询数据 if (SerchInfo == null || AllDataSource == null) { return; } if (SerchInfo.text == string.Empty) { // 所有数据显示 ListHall.DataSource = AllDataSource; } else { string strValue = SerchInfo.text; // 显示过滤的数据 IEnumerable <UListItemHallData> ListQuery = from item in AllDataSource where item.nRoomIndex == Convert.ToInt32(strValue) select item; UIWidgets.ObservableList <UListItemHallData> dataSource = new UIWidgets.ObservableList <UListItemHallData>(); foreach (UListItemHallData Item in ListQuery) { dataSource.Add(Item); } ListHall.DataSource = dataSource; } }
public void OnOfflineTogChanged(bool bSelect) { CurSelectItem = null; ListKinMember.DataSource.BeginUpdate(); ListKinMember.DataSource.Clear(); List <cmd_kin_membernode> KinMemberList = LogicDataCenter.kinDataManager.LegendKinMemberList; for (int i = 0; i < KinMemberList.Count; ++i) { cmd_kin_membernode cmdNodeData = KinMemberList[i]; UListItemKinMember item = new UListItemKinMember(); Toggle tOffLineTog = OffLineTog.GetComponent <Toggle>(); if (!tOffLineTog.isOn && cmdNodeData.bIsOnline == 0) { // 隐藏不在线玩家 continue; } item.IdentityID = cmdNodeData.nIdentity; item.PlayerID = cmdNodeData.dwPDBID; item.GradIcon += cmdNodeData.szGradeName; item.PersonIcon = cmdNodeData.nFaceID; item.PersonName += cmdNodeData.szName; item.Power = cmdNodeData.dwBattleVal; item.PowerRank += cmdNodeData.dwBVOrder; item.GameState = cmdNodeData.byGameState; item.Level += cmdNodeData.nLevel; item.isOnline = cmdNodeData.bIsOnline; item.nSex = cmdNodeData.nSex; item.nLastOrder = cmdNodeData.dwLastOrder; item.nBVOrder = cmdNodeData.dwBVOrder; PopupAction = new UPopupAction(); if (EntityFactory.MainHeroView.Property.GetNumProp(ENTITY_PROPERTY.PROPERTY_ID) != item.PlayerID) { PopupAction.Add(UPopupItemDataGetPlayerDetail.GetDescString(), new UPopupItemDataGetPlayerDetail(item.PlayerID)); PopupAction.Add(UPopupItemDataTeamInvite.GetDescString(), new UPopupItemDataTeamInvite(item.PlayerID)); PopupAction.Add(UPopupItemDataTeamRequest.GetDescString(), new UPopupItemDataTeamRequest(item.PlayerID)); } item.PopupAction = PopupAction; ListKinMember.DataSource.Add(item); } // 排序 IEnumerable <UListItemKinMember> ListQuery = from item in ListKinMember.DataSource orderby item.isOnline descending, item.IdentityID descending, item.Power descending select item; UIWidgets.ObservableList <UListItemKinMember> dataSource = new UIWidgets.ObservableList <UListItemKinMember>(); foreach (UListItemKinMember Item in ListQuery) { dataSource.Add(Item); } ListKinMember.DataSource = dataSource; ListKinMember.DataSource.EndUpdate(); }
public void SetRoomListData(IntPtr ptrParam, int nPtrLen) { IntPtrVaArgParseHelper helper = new IntPtrVaArgParseHelper(ptrParam, nPtrLen); cmd_match_hall_rooms_head head = helper.get <GameLogic.cmd_match_hall_rooms_head>(); for (int i = 0; i < head.nRoomCount; ++i) { GameLogic.cmd_match_hall_add_room cmdNodeData = helper.get <GameLogic.cmd_match_hall_add_room>(); UListItemHallData hallData = new UListItemHallData(); hallData.nRoomIndex = cmdNodeData.nRoomIndex; hallData.nRoomId = cmdNodeData.nRoomIndex; hallData.RoomName = cmdNodeData.szRoomName; hallData.GameMap = cmdNodeData.szMapDes; hallData.nCurPlayerCount = cmdNodeData.nCurPlayerNum; hallData.nTotalPlayerCount = cmdNodeData.nMaxPlayerNum; hallData.bLock = cmdNodeData.bLock > 0 ? true : false; ListHall.DataSource.Add(hallData); UListItemHallData hallDataCpy = hallData; AllDataSource.Add(hallDataCpy); } if (m_CurSelectRoomID > 0) { for (int i = 0; i < ListHall.DataSource.Count; i++) { UListItemHallData temp = ListHall.DataSource[i]; if (temp.nRoomId == m_CurSelectRoomID) { ListHall.Select(i); break; } } } else { // 默认选中一个无密码、人数不足的房间 for (int i = 0; i < ListHall.DataSource.Count; i++) { UListItemHallData temp = ListHall.DataSource[i]; if (temp.nCurPlayerCount < temp.nTotalPlayerCount && !temp.bLock) { m_CurHallItem = temp; m_CurSelectRoomID = temp.nRoomId; ListHall.Select(i); break; } } } }
public void OnRefreshButtonClick() { UIWidgets.ObservableList <UListItemHallData> dataSource = new UIWidgets.ObservableList <UListItemHallData>(); foreach (UListItemHallData Item in AllDataSource) { dataSource.Add(Item); } ListHall.DataSource.Clear(); ListHall.DataSource.BeginUpdate(); ListHall.DataSource = dataSource; ListHall.DataSource.EndUpdate(); m_CurHallItem = null; m_CurSelectRoomID = -1; }
public void SetKinMemberData() { ListKinMember.DataSource.Clear(); ListKinMember.OnSelect.RemoveListener(OnSelectKinMember); ListKinMember.onRightClick.RemoveListener(OnSelectKinMember); cmd_kin_basedata cmdHead = LogicDataCenter.kinDataManager.LegendKinBaseData; List <cmd_kin_membernode> listData = LogicDataCenter.kinDataManager.LegendKinMemberList; UIWidgets.ObservableList <UListItemKinMember> dataSource = new UIWidgets.ObservableList <UListItemKinMember>(); ListKinMember.DataSource.Clear(); for (int i = 0; i < cmdHead.nMemberCount; ++i) { GameLogic.cmd_kin_membernode cmdNodeData = listData[i]; UListItemKinMember item = new UListItemKinMember(); Toggle tOffLineTog = OffLineTog.GetComponent <Toggle>(); if (!tOffLineTog.isOn && cmdNodeData.bIsOnline == 0) { // 隐藏不在线玩家 continue; } item.IdentityID = cmdNodeData.nIdentity; item.PlayerID = cmdNodeData.dwPDBID; item.GradIcon += cmdNodeData.szGradeName; item.PersonIcon = cmdNodeData.nFaceID; item.PersonName += cmdNodeData.szName; item.Power += cmdNodeData.dwBattleVal; item.PowerRank += cmdNodeData.dwBVOrder; item.GameState = cmdNodeData.byGameState; item.Level += cmdNodeData.nLevel; item.isOnline = cmdNodeData.bIsOnline; item.nSex = cmdNodeData.nSex; item.nLastOrder = cmdNodeData.dwLastOrder; item.nBVOrder = cmdNodeData.dwBVOrder; PopupAction = new UPopupAction(); if (EntityFactory.MainHeroView.Property.GetNumProp(ENTITY_PROPERTY.PROPERTY_ID) != item.PlayerID) { PopupAction.Add(UPopupItemDataGetPlayerDetail.GetDescString(), new UPopupItemDataGetPlayerDetail(item.PlayerID)); PopupAction.Add(UPopupItemDataTeamInvite.GetDescString(), new UPopupItemDataTeamInvite(item.PlayerID)); PopupAction.Add(UPopupItemDataTeamRequest.GetDescString(), new UPopupItemDataTeamRequest(item.PlayerID)); } item.PopupAction = PopupAction; dataSource.Add(item); } // 排序 IEnumerable <UListItemKinMember> ListQuery = from item in dataSource orderby item.isOnline descending, item.IdentityID descending, item.Power descending select item; UIWidgets.ObservableList <UListItemKinMember> tDataSource = new UIWidgets.ObservableList <UListItemKinMember>(); foreach (UListItemKinMember Item in ListQuery) { tDataSource.Add(Item); } ListKinMember.DataSource = tDataSource; ListKinMember.OnSelect.AddListener(OnSelectKinMember); ListKinMember.onRightClick.AddListener(OnSelectKinMember); // 设置战队基本数据 KinName.text = cmdHead.szKinName; KinShaikhName.text = cmdHead.szShaikhName; KinLevel.text = cmdHead.nKinLevel.ToString(); TotalMemberInfo.text = cmdHead.nOnlineCount + " / " + cmdHead.nMemberCount + "( " + ULocalizationService.Instance.Get("UIView", "KinMember", "MaxCountDes") + cmdHead.nKinMaxMember + ")"; TotalFight.text = cmdHead.nTotalFight.ToString(); TotalOrder.text = cmdHead.nFightOrder.ToString(); KinLabel.text = cmdHead.szKinLabel; MatchResult.text = cmdHead.nMatchWinNum + " / " + cmdHead.nMatchTotalNum; GoldAward.SetData(cmdHead.nGoldNum); SilverAward.SetData(cmdHead.nSilverNum); KinNoticeDes.text = cmdHead.szNotice; }