| using System.Collections; | 
| using System.Collections.Generic; | 
| using UnityEngine; | 
| using UnityEngine.UI; | 
|   | 
| /// <summary> | 
| /// 积分招募规则 | 
| /// </summary> | 
| public class HeroCallScoreRuleWin : UIBase | 
| { | 
|   | 
|     [SerializeField] ScrollerController scrollerController; | 
|     [SerializeField] HeroSelectBehaviour heroSelectBehaviour; | 
|   | 
|   | 
|     protected override void OnPreOpen() | 
|     { | 
|         HeroUIManager.Instance.selectHeroCallListJob = 0; | 
|         HeroUIManager.Instance.selectHeroCallListCountry = 0; | 
|   | 
|         HeroUIManager.Instance.SortHeroCallList(); | 
|         scrollerController.OnRefreshCell += OnRefreshCell; | 
|         Refresh(); | 
|         CreateScroller(); | 
|     } | 
|   | 
|     protected override void OnPreClose() | 
|     { | 
|         scrollerController.OnRefreshCell -= OnRefreshCell; | 
|     } | 
|   | 
|     public override void Refresh() | 
|     { | 
|         heroSelectBehaviour.Display(0, HeroUIManager.Instance.selectHeroListJob, HeroUIManager.Instance.selectHeroListCountry, SelectJobCountry); | 
|     } | 
|   | 
|     void SelectJobCountry(int job, int country) | 
|     { | 
|         HeroUIManager.Instance.selectHeroCallListJob = job; | 
|         HeroUIManager.Instance.selectHeroCallListCountry = country; | 
|         HeroUIManager.Instance.SortHeroCallList(); | 
|         scrollerController.m_Scorller.RefreshActiveCellViews(); | 
|     } | 
|   | 
|     void OnRefreshCell(ScrollerDataType type, CellView cellView) | 
|     { | 
|         var _cell = cellView as HeroSmallHeadLineCell; | 
|         _cell.Display(cellView.index); | 
|     } | 
|   | 
|     void CreateScroller() | 
|     { | 
|         scrollerController.Refresh(); | 
|         for (int i = 0; i < HeroUIManager.Instance.heroCallSortList.Count; i++) | 
|         { | 
|             if (i % 4 == 0) | 
|             { | 
|                 scrollerController.AddCell(ScrollerDataType.Header, i); | 
|             } | 
|         } | 
|         scrollerController.Restart(); | 
|     } | 
| } |