From 67540c27ef9dbc2555050d7295cde19dc3054402 Mon Sep 17 00:00:00 2001 From: wangguan <wangguan@kt007.com> Date: Thu, 19 Nov 2020 18:02:53 +0800 Subject: [PATCH] 修改结算页面 --- Assets/Scripts/UI/FinalPanel/FinalPanel.cs | 54 ++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 40 insertions(+), 14 deletions(-) diff --git a/Assets/Scripts/UI/FinalPanel/FinalPanel.cs b/Assets/Scripts/UI/FinalPanel/FinalPanel.cs index 9016240..8bbc324 100644 --- a/Assets/Scripts/UI/FinalPanel/FinalPanel.cs +++ b/Assets/Scripts/UI/FinalPanel/FinalPanel.cs @@ -1,4 +1,5 @@ -using System.Collections; +using System.Collections.Generic; +using System.Collections; using UnityEngine.UI; using UnityEngine; using EnhancedUI; @@ -11,10 +12,10 @@ public class FinalPanel : MonoBehaviour, IEnhancedScrollerDelegate { - private EnhancedScroller scroller; + //private EnhancedScroller scroller; - private SmallList<FinalPanelItemData> _data; - + //private SmallList<FinalPanelItemData> _data; + private List<FinalPanelItemData> _data; public EnhancedScrollerCellView cellViewPrefab; [SerializeField] private Sprite rank_di_0, rank_di_1, rank_di_2, rank_di_03; @@ -64,7 +65,8 @@ public void SetData(string waveInfo, int myScore) { hScore = PlayerPrefs.GetInt("GemBattleHScore"); - scrollerCanvasGroup = transform.Find("Scroller").GetComponent<CanvasGroup>(); + scrollerCanvasGroup = transform.Find("Scroll View").GetComponent<CanvasGroup>(); + //scrollerCanvasGroup = transform.Find("Scroller").GetComponent<CanvasGroup>(); if (myScore > hScore) { PlayerPrefs.SetInt("GemBattleHScore", myScore); @@ -123,16 +125,26 @@ IEnumerator PlayerItemDoTween() { yield return 1f; - FinalPanelItem[] allItems = transform.Find("Scroller/Container").GetComponentsInChildren<FinalPanelItem>(); - for (int i = 0; i < allItems.Length; i++) + // FinalPanelItem[] allItems = transform.Find("Scroller/Container").GetComponentsInChildren<FinalPanelItem>(); + // for (int i = 0; i < allItems.Length; i++) + // { + // allItems[i].SetPos(); + // } + for (int i = 0; i < 8; i++) { - allItems[i].SetPos(); + allItemLis[i].SetPos(); } + yield return new WaitForEndOfFrame(); scrollerCanvasGroup.alpha = 1; - for (int i = 0; i < allItems.Length; i++) + // for (int i = 0; i < allItems.Length; i++) + // { + // allItems[i].PlayDoTween(0.1f); + // yield return new WaitForSeconds(0.1f); + // } + for (int i = 0; i < 8; i++) { - allItems[i].PlayDoTween(0.1f); + allItemLis[i].PlayDoTween(0.1f); yield return new WaitForSeconds(0.1f); } image_HScore.SetActive(true); @@ -159,19 +171,28 @@ closeBtn.interactable = true; } + List<FinalPanelItem> allItemLis;//新生成的排行榜 /// <summary> /// 生成假排行榜 /// </summary> /// <param name="hScore">自身分数</param> private void LoadLargeData(int hScore) { - scroller = transform.Find("Scroller").GetComponent<EnhancedScroller>(); - scroller.Delegate = this; - _data = new SmallList<FinalPanelItemData>(); + //scroller = transform.Find("Scroller").GetComponent<EnhancedScroller>(); + Transform content = transform.Find("Scroll View/Viewport/Content"); + + //scroller.Delegate = this; + _data = new List<FinalPanelItemData>(); FinalPanelItemData data; int score = 101; + GameObject go; + FinalPanelItem tmpData; + allItemLis = new List<FinalPanelItem>(); for (var i = 0; i < 100; i++) { + go = Instantiate(cellViewPrefab.gameObject, content); + tmpData = go.GetComponent<FinalPanelItem>(); + allItemLis.Add(tmpData); data = new FinalPanelItemData(); data.score = score - i; data.index = i + 1; @@ -191,8 +212,13 @@ _data[2].spriteIcon = rank_icon_2; _data[2].spriteBackGround = rank_di_2; + // tell the scroller to reload now that we have the data - scroller.ReloadData(); + //scroller.ReloadData(); + for (int i = 0; i < allItemLis.Count; i++) + { + allItemLis[i].SetData(_data[i]); + } } #region EnhancedScroller Handlers -- Gitblit v1.9.1