using System.Collections.Generic;
|
using UnityEngine;
|
|
public abstract class OSRankGiftBaseWin : UIBase
|
{
|
[SerializeField] protected ScrollerController scrollerController;
|
|
protected override void OnPreOpen()
|
{
|
scrollerController.OnRefreshCell += OnRefreshCell;
|
StoreModel.Instance.RefreshBuyShopLimitEvent += RefreshStore;
|
RechargeManager.Instance.rechargeCountEvent += OnRechargeCountEvent;
|
RefreshManagerSortList();
|
Display();
|
}
|
|
protected override void OnPreClose()
|
{
|
scrollerController.OnRefreshCell -= OnRefreshCell;
|
StoreModel.Instance.RefreshBuyShopLimitEvent -= RefreshStore;
|
RechargeManager.Instance.rechargeCountEvent -= OnRechargeCountEvent;
|
}
|
|
protected abstract void RefreshManagerSortList();
|
protected abstract IList<int> GetGiftSortList();
|
protected abstract void OnRefreshCell(ScrollerDataType type, CellView cell);
|
|
protected void Display()
|
{
|
scrollerController.Refresh();
|
var list = GetGiftSortList();
|
for (int i = 0; i < list.Count; i++)
|
{
|
scrollerController.AddCell(ScrollerDataType.Header, i);
|
}
|
scrollerController.Restart();
|
}
|
|
protected void RefreshStore()
|
{
|
scrollerController.m_Scorller.RefreshActiveCellViews();
|
}
|
|
protected void OnRechargeCountEvent(int id)
|
{
|
scrollerController.m_Scorller.RefreshActiveCellViews();
|
}
|
}
|