//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Monday, January 28, 2019 //-------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using vnxbqy.UI; public class MergeServerCollectWordsWin : ILWindow { ScrollerController collectScroll; Text m_OpenTime; Text m_Info; MergeServerCollectWordsModel model = MergeServerCollectWordsModel.Instance; #region Built-in protected override void BindController() { collectScroll = proxy.GetWidgtEx("Scroller"); m_OpenTime = proxy.GetWidgtEx("Txt_CoolDown"); m_Info = proxy.GetWidgtEx("Info"); } protected override void AddListeners() { collectScroll.OnRefreshCell += OnRefreshCell; } protected override void OnPreOpen() { model.ExChangeInfoUpdate += OnRefresh; } protected override void OnAfterOpen() { Display(); } protected override void OnPreClose() { model.ExChangeInfoUpdate -= OnRefresh; } protected override void OnAfterClose() { } #endregion void Display() { DisplayOpenTime(); DisplayCollect(); } void OnRefresh() { collectScroll.m_Scorller.RefreshActiveCellViews(); } void DisplayCollect() { OperationBase operationBase = null; if (!OperationTimeHepler.Instance.TryGetOperationTime(model.collectWordsType, out operationBase)) { return; } OperationCollectWords operation = operationBase as OperationCollectWords; collectScroll.Refresh(); for (int i = 0; i< operation.exchangeWords.Count; i++) { collectScroll.AddCell(ScrollerDataType.Header, i); } collectScroll.Restart(); collectScroll.JumpIndex(model.jumpIndex); } void DisplayOpenTime() { m_Info.SetActiveIL(false); OperationBase operationBase = null; if (OperationTimeHepler.Instance.TryGetOperationTime(model.collectWordsType, out operationBase)) { OperationCollectWords operation = operationBase as OperationCollectWords; m_OpenTime.text = StringUtility.Contact(Language.Get("ExpActivity_Text1"), operation.ToDisplayTime()); //最后一天特殊说明 if (operation.LastDayOnlyExchange > 0) { m_Info.SetActiveIL(true); } } } private void OnRefreshCell(ScrollerDataType type, CellView cell) { var collectWordCell = cell.GetILBehaviour(); collectWordCell.Display(cell.index); } }