//搜索结果回调 private bool SearchCallBack(int eventId, object arg) { for (int i = 0; i < RankList.childCount; i++) { Transform ch = RankList.GetChild(i); GameObject.Destroy(ch.gameObject); } Dictionary <int, PlayerInfo> searchList = SearchInfoModel.Instance.SearchList; foreach (PlayerInfo player in searchList.Values) { GameObject go = GameObject.Instantiate(RankItem) as GameObject; RankItem rankItem = go.AddComponent <RankItem>(); rankItem.SetDate(player); go.transform.SetParent(RankList); go.transform.localScale = new Vector3(1, 1, 1); } return(false); }
//加载排行榜列表 private bool LoadRankList(int eventId, object arg) { if (RankItem == null) { isFrist = false; return(false); } if (!LastPageBtn.gameObject.activeInHierarchy) { LastPageBtn.gameObject.SetActive(true); NextPageBtn.gameObject.SetActive(true); _Text.gameObject.SetActive(true); } Dictionary <int, PlayerInfo> rankList = RankInfoModel.Instance.RankList; if (rankList.Count == 0) { FriendsInfoController.Instance.currentPage--; MaxPage = FriendsInfoController.Instance.currentPage; } else { for (int i = 0; i < RankList.childCount; i++) { if (RankList.GetChild(i) != null) { Transform tr = RankList.GetChild(i); Image img = tr.Find("Icon").GetComponent <Image>(); img.material.SetTexture(0, null); GameObject.Destroy(tr.gameObject); } } Resources.UnloadUnusedAssets(); System.GC.Collect(); int min = 0, max = 0; foreach (PlayerInfo player in rankList.Values) { if (min == 0) { min = player.Rank; } if (player.Rank < min) { min = player.Rank; } if (player.Rank > max) { max = player.Rank; } GameObject go = GameObject.Instantiate(RankItem) as GameObject; RankItem rankItem = go.AddComponent <RankItem>(); rankItem.SetDate(player); go.transform.SetParent(RankList); go.transform.localScale = new Vector3(1, 1, 1); for (int i = 0; i < RankList.childCount - 1; i++) { if (RankList.GetChild(i).GetComponent <RankItem>().rank > rankItem.rank) { go.transform.SetSiblingIndex(i); break; } } } _Text.text = FriendsInfoController.Instance.currentPage + "/" + 10; } RankInfoModel.Instance.RankList.Clear(); LoadingImage.gameObject.SetActive(false); return(false); }