//-------------------------------------------------------- // [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(); } } }