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