From 7fa46d2bf427f8216bf2b011cf65453e7aceebc8 Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期一, 06 七月 2026 19:19:23 +0800
Subject: [PATCH] 579 炼器大会 奖励界面和礼包界面修改
---
Main/System/LianQi/LianQiRankAwardCell.cs | 57 +++++++++-------------------
Main/System/LianQi/LianQiAwardWin.cs | 5 ++
2 files changed, 24 insertions(+), 38 deletions(-)
diff --git a/Main/System/LianQi/LianQiAwardWin.cs b/Main/System/LianQi/LianQiAwardWin.cs
index 7b3a4a0..ee977aa 100644
--- a/Main/System/LianQi/LianQiAwardWin.cs
+++ b/Main/System/LianQi/LianQiAwardWin.cs
@@ -3,11 +3,13 @@
public class LianQiAwardWin : UIBase
{
+ [SerializeField] ButtonEx closeButton;
[SerializeField] ScrollerController awardScroller;
[HideInInspector] public string valueFormat = "{0}";
[SerializeField] TextEx myScore;//璇█琛細
[SerializeField] TextEx myRank;
[SerializeField] ScrollerController myAwardScroller;
+ [SerializeField] Transform noAward;
[SerializeField] ButtonEx getButton;
[SerializeField] ImageEx getImage;
[SerializeField] ImageEx redImage;
@@ -18,6 +20,7 @@
{
base.InitComponent();
getButton.SetListener(OnClickGetButton);
+ closeButton.SetListener(CloseWindow);
}
protected override void OnPreOpen()
@@ -93,6 +96,7 @@
SetGetButtonState(hasRankRefresh && manager.CanHaveBillAward());
if (hasAward && config != null)
{
+ noAward.SetActive(false);
myAwardScroller.SetActive(true);
CreateMyAwardScroller(config.AwardItemList);
}
@@ -101,6 +105,7 @@
myAwardScroller.Refresh();
myAwardScroller.Restart();
myAwardScroller.SetActive(false);
+ noAward.SetActive(true);
}
}
diff --git a/Main/System/LianQi/LianQiRankAwardCell.cs b/Main/System/LianQi/LianQiRankAwardCell.cs
index 6e5471c..83c78bb 100644
--- a/Main/System/LianQi/LianQiRankAwardCell.cs
+++ b/Main/System/LianQi/LianQiRankAwardCell.cs
@@ -4,21 +4,17 @@
{
[SerializeField] ImageEx imgRank;
[SerializeField] TextEx txtRank;
- [SerializeField] ScrollerController itemScroller;
-
- private void OnDisable()
- {
- UnbindItemScroller();
- }
+ [SerializeField] ItemCell[] itemCells;
public void Display(int rankA, int templateID)
{
- UnbindItemScroller();
var config = ActBillboardAwardConfig.GetConfig(templateID, rankA);
if (config == null)
{
- itemScroller.Refresh();
- itemScroller.Restart();
+ for (int i = 0; i < itemCells.Length; i++)
+ {
+ itemCells[i].SetActive(false);
+ }
return;
}
@@ -37,36 +33,21 @@
txtRank.text = Language.Get("Arena15", rankA, config.RankB);
}
- CreateItemScroller(config.AwardItemList);
- }
-
- private void CreateItemScroller(int[][] rewardArr)
- {
- itemScroller.OnRefreshCell += OnRefreshItemCell;
- itemScroller.OnRefreshCompleteEvent += OnRefreshItemComplete;
- itemScroller.Refresh();
- for (int i = 0; i < rewardArr.Length; i++)
+ int[][] rewardArr = config.AwardItemList;
+ for (int i = 0; i < itemCells.Length; i++)
{
- CellInfo info = new CellInfo(rewardArr[i][0], rewardArr[i][1], null);
- itemScroller.AddCell(ScrollerDataType.Header, i, info);
+ var itemCell = itemCells[i];
+ if (!rewardArr.IsNullOrEmpty() && i < rewardArr.Length)
+ {
+ int itemID = rewardArr[i][0];
+ itemCell.SetActive(true);
+ itemCell.Init(new ItemCellModel(itemID, true, rewardArr[i][1]));
+ itemCell.SetClickListener(() => ItemTipUtility.Show(itemID, true));
+ }
+ else
+ {
+ itemCell.SetActive(false);
+ }
}
- itemScroller.Restart();
- }
-
- private void OnRefreshItemComplete()
- {
- UnbindItemScroller();
- }
-
- private void OnRefreshItemCell(ScrollerDataType type, CellView cell)
- {
- var _cell = cell.GetComponent<LianQiRankAwardItemCell>();
- _cell?.Display(cell);
- }
-
- private void UnbindItemScroller()
- {
- itemScroller.OnRefreshCell -= OnRefreshItemCell;
- itemScroller.OnRefreshCompleteEvent -= OnRefreshItemComplete;
}
}
--
Gitblit v1.8.0