using UnityEngine; using UnityEngine.UI; using System.Collections; using Games.GlobeDefine; public class RankInfoItem : UIItemBase { #region public Image _RankIdxImg; public Text _RankIdxTx; public Text _PlayerName; public Text[] _PlayerInfos; public GridLayoutGroup _RankInfoPanel; private PVPData.RankDataItem _RankData; #endregion public override void Show(Hashtable hash) { base.Show(); var rankData = (PVPData.RankDataItem)hash["InitObj"]; ShowRankItem(rankData); } private void ShowRankItem(PVPData.RankDataItem rankData) { _RankData = rankData; _RankIdxTx.text = _RankData.str1; _PlayerName.text = _RankData.str2; int exStrCount = 0; if (!string.IsNullOrEmpty(_RankData.str3)) { _PlayerInfos[0].text = _RankData.str3; _PlayerInfos[0].gameObject.SetActive(true); ++exStrCount; } else { _PlayerInfos[0].gameObject.SetActive(false); } if (!string.IsNullOrEmpty(_RankData.str4)) { _PlayerInfos[1].text = _RankData.str4; _PlayerInfos[1].gameObject.SetActive(true); ++exStrCount; } else { _PlayerInfos[1].gameObject.SetActive(false); } if (!string.IsNullOrEmpty(_RankData.str5)) { _PlayerInfos[2].text = _RankData.str5; _PlayerInfos[2].gameObject.SetActive(true); ++exStrCount; } else { _PlayerInfos[2].gameObject.SetActive(false); } if (!string.IsNullOrEmpty(_RankData.str6)) { _PlayerInfos[3].text = _RankData.str6; _PlayerInfos[3].gameObject.SetActive(true); ++exStrCount; } else { _PlayerInfos[3].gameObject.SetActive(false); } if (exStrCount > 0) { float exStrWidth = _RankInfoPanel.GetComponent().sizeDelta.x / exStrCount; float exStrHeight = _RankInfoPanel.GetComponent().sizeDelta.y; _RankInfoPanel.cellSize = new Vector2(exStrWidth, exStrHeight); } } }