using UnityEngine;
|
using UnityEngine.UI;
|
|
//带有多个物品的操作提示
|
public class ItemsConfirmWin : UIBase
|
{
|
[SerializeField] Text m_Title;
|
[SerializeField] Text m_Info; //上方提示
|
[SerializeField] Text m_Info2; //物品列表下方提示
|
[SerializeField] ScrollerController m_Scroller;
|
[SerializeField] Button m_ConfirmBtn;
|
[SerializeField] Button m_CancleBtn;
|
[SerializeField] Text m_BtnText;
|
[SerializeField] Transform moneyObj;
|
[SerializeField] Text moneyText;
|
[SerializeField] Image moneyIcon;
|
|
|
#region Built-in
|
|
|
protected override void InitComponent()
|
{
|
m_ConfirmBtn.AddListener(ConfirmBtn);
|
m_CancleBtn.AddListener( ()=>
|
{
|
ConfirmCancel.OnPopConfirmClickEvent?.Invoke(false);
|
CloseWindow();
|
});
|
}
|
|
protected override void OnPreOpen()
|
{
|
m_Title.text = ConfirmCancel.generalTitle;
|
m_Info.text = ConfirmCancel.generalItemTip;
|
m_Info2.text = ConfirmCancel.generalItemTip2;
|
m_Scroller.OnRefreshCell += OnRefreshCell;
|
CreateScroller();
|
m_BtnText.text = string.IsNullOrEmpty(ConfirmCancel.OKName) ? Language.Get("L1001") : ConfirmCancel.OKName;
|
if (ConfirmCancel.moneyNeedCount == 0)
|
{
|
moneyObj.SetActive(false);
|
}
|
else
|
{
|
moneyObj.SetActive(true);
|
moneyText.text = UIHelper.ShowUseMoney(ConfirmCancel.moneyType, (ulong)ConfirmCancel.moneyNeedCount);
|
moneyIcon.SetIconWithMoneyType(ConfirmCancel.moneyType);
|
}
|
}
|
|
|
protected override void OnPreClose()
|
{
|
m_Scroller.OnRefreshCell -= OnRefreshCell;
|
|
}
|
|
#endregion
|
|
private void ConfirmBtn()
|
{
|
ConfirmCancel.OnPopConfirmClickEvent?.Invoke(true);
|
}
|
|
|
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();
|
}
|
}
|
|
|
|
|
|