//--------------------------------------------------------
|
// [Author]: 第二世界
|
// [ Date ]: Thursday, January 25, 2018
|
//--------------------------------------------------------
|
|
|
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
namespace vnxbqy.UI
|
{
|
//带有多个物品的操作提示
|
public class ItemsConfirmWin : Window
|
{
|
[SerializeField] Text m_Title;
|
[SerializeField] Text m_Info;
|
[SerializeField] Button m_CloseBtn;
|
[SerializeField] ScrollerController m_Scroller;
|
[SerializeField] Button m_ConfirmBtn;
|
[SerializeField] Text m_BtnText;
|
[SerializeField] Transform moneyObj;
|
[SerializeField] Text moneyText;
|
[SerializeField] Image moneyIcon;
|
|
|
#region Built-in
|
protected override void BindController()
|
{
|
}
|
|
protected override void AddListeners()
|
{
|
m_ConfirmBtn.AddListener(ConfirmBtn);
|
m_CloseBtn.AddListener(CloseClick);
|
}
|
|
protected override void OnPreOpen()
|
{
|
m_Title.text = ConfirmCancel.generalTitle;
|
m_Info.text = ConfirmCancel.generalItemTip;
|
m_Scroller.OnRefreshCell += OnRefreshCell;
|
CreateScroller();
|
m_BtnText.text = ConfirmCancel.OKName;
|
if (ConfirmCancel.moneyNeedCount == 0)
|
{
|
moneyObj.SetActive(false);
|
}
|
else
|
{
|
moneyObj.SetActive(true);
|
moneyText.text = UIHelper.AppendColor((ulong)ConfirmCancel.moneyNeedCount > UIHelper.GetMoneyCnt(ConfirmCancel.moneyType) ? TextColType.Red:TextColType.Green,
|
string.Format("{0}/{1}", UIHelper.GetMoneyCnt(ConfirmCancel.moneyType), ConfirmCancel.moneyNeedCount));
|
moneyIcon.SetIconWithMoneyType(ConfirmCancel.moneyType);
|
}
|
}
|
|
protected override void OnAfterOpen()
|
{
|
}
|
|
protected override void OnPreClose()
|
{
|
m_Scroller.OnRefreshCell -= OnRefreshCell;
|
}
|
|
protected override void OnAfterClose()
|
{
|
}
|
#endregion
|
|
private void ConfirmBtn()
|
{
|
CloseClick();
|
if (ConfirmCancel.ItemConfirmEvent != null)
|
{
|
ConfirmCancel.ItemConfirmEvent();
|
}
|
}
|
|
|
void OnRefreshCell(ScrollerDataType type, CellView cell)
|
{
|
var _cell = cell as ItemsConfirmCell;
|
_cell?.Display(cell.index);
|
}
|
|
void CreateScroller()
|
{
|
m_Scroller.Refresh();
|
for (int i = 0; i < ConfirmCancel.getItems.Count; i++)
|
{
|
m_Scroller.AddCell(ScrollerDataType.Header, i);
|
}
|
m_Scroller.Restart();
|
}
|
}
|
|
}
|
|
|
|
|