This commit is contained in:
DESKTOP-SAJ6RKV\Administrator 2025-05-29 23:40:48 +08:00
parent 0aa0feb6b4
commit edca73daf0

View File

@ -10,31 +10,31 @@ namespace GameLogic
[Window(UILayer.UI)]
class UIGameWorldRankForm : UIWindow
{
#region ½Å±¾¹¤¾ßÉú³ÉµÄ´úÂë
private Toggle m_toggle_weekRank;
private Toggle m_toggle_Rank;
private Toggle m_toggle_gongXianRank;
private LoopListView m_loopListView_View;
private GameObject m_itemRankItem;
private LoopListView m_loopListView_JiaZuView;
private GameObject m_itemRankItemJiaZu;
private Button m_btn_Close;
protected override void ScriptGenerator()
{
m_toggle_weekRank = FindChildComponent<Toggle>("Bg/Bg/Panel/ToggleGroup/m_toggle_weekRank");
m_toggle_Rank = FindChildComponent<Toggle>("Bg/Bg/Panel/ToggleGroup/m_toggle_Rank");
m_toggle_gongXianRank = FindChildComponent<Toggle>("Bg/Bg/Panel/ToggleGroup/m_toggle_gongXianRank");
m_loopListView_View = FindChildComponent<LoopListView>("Bg/ScrollViewPanel/m_loopListView_View");
m_itemRankItem = FindChild("Bg/ScrollViewPanel/m_loopListView_View/Viewport/Content/m_itemRankItem").gameObject;
m_loopListView_JiaZuView = FindChildComponent<LoopListView>("Bg/ScrollViewPanel/m_loopListView_JiaZuView");
m_itemRankItemJiaZu = FindChild("Bg/ScrollViewPanel/m_loopListView_JiaZuView/Viewport/Content/m_itemRankItemJiaZu").gameObject;
m_btn_Close = FindChildComponent<Button>("Bg/m_btn_Close");
m_toggle_weekRank.onValueChanged.AddListener(OnToggle_weekRankChange);
m_toggle_Rank.onValueChanged.AddListener(OnToggle_RankChange);
m_toggle_gongXianRank.onValueChanged.AddListener(OnToggle_gongXianRankChange);
m_btn_Close.onClick.AddListener(OnClick_CloseBtn);
}
#endregion
#region
private Toggle m_toggle_weekRank;
private Toggle m_toggle_Rank;
private Toggle m_toggle_gongXianRank;
private LoopListView m_loopListView_View;
private GameObject m_itemRankItem;
private LoopListView m_loopListView_JiaZuView;
private GameObject m_itemRankItemJiaZu;
private Button m_btn_Close;
protected override void ScriptGenerator()
{
m_toggle_weekRank = FindChildComponent<Toggle>("Bg/Bg/Panel/ToggleGroup/m_toggle_weekRank");
m_toggle_Rank = FindChildComponent<Toggle>("Bg/Bg/Panel/ToggleGroup/m_toggle_Rank");
m_toggle_gongXianRank = FindChildComponent<Toggle>("Bg/Bg/Panel/ToggleGroup/m_toggle_gongXianRank");
m_loopListView_View = FindChildComponent<LoopListView>("Bg/ScrollViewPanel/m_loopListView_View");
m_itemRankItem = FindChild("Bg/ScrollViewPanel/m_loopListView_View/Viewport/Content/m_itemRankItem").gameObject;
m_loopListView_JiaZuView = FindChildComponent<LoopListView>("Bg/ScrollViewPanel/m_loopListView_JiaZuView");
m_itemRankItemJiaZu = FindChild("Bg/ScrollViewPanel/m_loopListView_JiaZuView/Viewport/Content/m_itemRankItemJiaZu").gameObject;
m_btn_Close = FindChildComponent<Button>("Bg/m_btn_Close");
m_toggle_weekRank.onValueChanged.AddListener(OnToggle_weekRankChange);
m_toggle_Rank.onValueChanged.AddListener(OnToggle_RankChange);
m_toggle_gongXianRank.onValueChanged.AddListener(OnToggle_gongXianRankChange);
m_btn_Close.onClick.AddListener(OnClick_CloseBtn);
}
#endregion
#region
private void OnToggle_weekRankChange(bool isOn)
@ -77,12 +77,16 @@ namespace GameLogic
List<PlayRankData> m_PlayRankDataWeek; // 周缓存
List<PlayRankData> m_PlayRankDataMonth; // 月缓存
List<PlayRankData> m_PlayRankDataJiaZu; // 家族缓存
private async Task GetRankData()
{
if (rankType == 1)
{
m_loopListView_View.gameObject.SetActive(true);
m_loopListView_JiaZuView.gameObject.SetActive(false);
if (m_PlayRankDataWeek != null && m_PlayRankDataWeek.Count > 0)
{
m_PlayRankDatas = m_PlayRankDataWeek;
@ -92,6 +96,9 @@ namespace GameLogic
}
else if (rankType == 2)
{
m_loopListView_View.gameObject.SetActive(true);
m_loopListView_JiaZuView.gameObject.SetActive(false);
if (m_PlayRankDataMonth != null && m_PlayRankDataMonth.Count > 0)
{
m_PlayRankDatas = m_PlayRankDataMonth;
@ -99,6 +106,20 @@ namespace GameLogic
return;
}
}
else
{
m_loopListView_View.gameObject.SetActive(false);
m_loopListView_JiaZuView.gameObject.SetActive(true);
if (m_PlayRankDataJiaZu != null && m_PlayRankDataJiaZu.Count > 0)
{
m_PlayRankDatas = m_PlayRankDataJiaZu;
RefreshUI();
return;
}
}
// 默认显示周榜
var data = await DataGameModelManager.Instance.C2S_GetResultRank(rankType);
@ -112,6 +133,10 @@ namespace GameLogic
{
m_PlayRankDataMonth = m_PlayRankDatas;
}
else
{
m_PlayRankDataJiaZu = m_PlayRankDatas;
}
RefreshUI();
@ -119,15 +144,32 @@ namespace GameLogic
bool isInit = false;
bool isJiaZuInit = false;
private void RefreshUI()
{
if (!isInit)
if (rankType == 3)
{
m_loopListView_View.InitListView(m_PlayRankDatas.Count, OnGetItemByIndex);
isInit = true;
if (!isJiaZuInit)
{
m_loopListView_JiaZuView.InitListView(m_PlayRankDatas.Count, OnGetItemByIndex);
isJiaZuInit = true;
}
m_loopListView_JiaZuView.SetListItemCount(m_PlayRankDatas.Count);
m_loopListView_JiaZuView.RefreshAllShownItem();
}
m_loopListView_View.SetListItemCount(m_PlayRankDatas.Count);
m_loopListView_View.RefreshAllShownItem();
else
{
if (!isInit)
{
m_loopListView_View.InitListView(m_PlayRankDatas.Count, OnGetItemByIndex);
isInit = true;
}
m_loopListView_View.SetListItemCount(m_PlayRankDatas.Count);
m_loopListView_View.RefreshAllShownItem();
}
}