//--------------------------------------------------------
|
// [Author]: 第二世界
|
// [ Date ]: Monday, January 28, 2019
|
//--------------------------------------------------------
|
|
using System;
|
using System.Collections;
|
using System.Collections.Generic;
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
namespace vnxbqy.UI
|
{
|
|
public class CollectWordsWin : Window
|
{
|
ScrollerController collectScroll;
|
Text m_OpenTime;
|
Text m_Info;
|
|
CollectWordsModel model
|
{
|
get { return ModelCenter.Instance.GetModel<CollectWordsModel>(); }
|
}
|
|
|
#region Built-in
|
protected override void BindController()
|
{
|
collectScroll = GetWidgt<ScrollerController>("CollectScroll");
|
m_OpenTime = GetWidgt<Text>("CoolDownTxt");
|
m_Info = GetWidgt<Text>("Info");
|
}
|
|
protected override void AddListeners()
|
{
|
collectScroll.OnRefreshCell += OnRefreshCell;
|
|
}
|
|
protected override void OnPreOpen()
|
{
|
model.ExChangeInfoUpdate += OnRefresh;
|
Display();
|
}
|
|
protected override void OnAfterOpen()
|
{
|
if (!DayRemind.Instance.GetDayRemind(DayRemind.WORD_YY_REDPOINT))
|
{
|
DayRemind.Instance.SetDayRemind(DayRemind.WORD_YY_REDPOINT, true);
|
model.UpdateRedpoint();
|
}
|
}
|
|
protected override void OnPreClose()
|
{
|
model.ExChangeInfoUpdate -= OnRefresh;
|
}
|
|
protected override void OnAfterClose()
|
{
|
}
|
#endregion
|
|
void Display()
|
{
|
DisplayOpenTime();
|
DisplayCollect();
|
}
|
|
void OnRefresh()
|
{
|
collectScroll.m_Scorller.RefreshActiveCellViews();
|
}
|
void DisplayCollect()
|
{
|
OperationCollectWords operation;
|
if (!OperationTimeHepler.Instance.TryGetOperation(Operation.CollectWords, out operation))
|
{
|
return;
|
}
|
|
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.SetActive(false);
|
OperationCollectWords operation;
|
if (OperationTimeHepler.Instance.TryGetOperation(Operation.CollectWords, out operation))
|
{
|
m_OpenTime.text = StringUtility.Contact(Language.Get("ExpActivity_Text1"), operation.ToDisplayTime());
|
|
//最后一天特殊说明
|
if (operation.LastDayOnlyExchange > 0)
|
{
|
m_Info.SetActive(true);
|
}
|
}
|
}
|
|
|
private void OnRefreshCell(ScrollerDataType type, CellView cell)
|
{
|
|
var collectWordCell = cell as CollectWordsCell;
|
collectWordCell.Display(cell.index);
|
}
|
|
}
|
|
}
|