using UnityEngine;
|
|
public class FunctionPreviewWin : UIBase
|
{
|
[SerializeField] ScrollerController scroller;
|
|
protected override void OnPreOpen()
|
{
|
scroller.lockType = EnhanceLockType.KeepVertical;
|
scroller.OnRefreshCell += OnRefreshCell;
|
FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent;
|
CreateScoller();
|
}
|
|
protected override void OnPreClose()
|
{
|
scroller.OnRefreshCell -= OnRefreshCell;
|
FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent;
|
}
|
|
private void OnFuncStateChangeEvent(int obj)
|
{
|
CreateScoller();
|
}
|
|
private void OnRefreshCell(ScrollerDataType type, CellView cell)
|
{
|
var _cell = cell.GetComponent<FunctionPreviewCell>();
|
_cell?.Display(cell.index, cell);
|
}
|
|
private void CreateScoller()
|
{
|
scroller.Refresh();
|
var list = FuncOpen.Instance.GetSortShowList();
|
if (!list.IsNullOrEmpty())
|
{
|
for (int i = 0; i < list.Count; i++)
|
{
|
CellInfo info = new CellInfo();
|
info.infoInt1 = list[i];
|
scroller.AddCell(ScrollerDataType.Header, i, info);
|
}
|
}
|
scroller.Restart();
|
}
|
}
|