Пример #1
0
        /// <summary>
        /// 初始脚本
        /// </summary>
        /// <param name="btns"></param>
        public void Init(List <Button> btns, LabelBtnClickEvent clickEvent = null)
        {
            Clear();
            this.m_btns = btns;

            for (int i = 0; i < m_btns.Count; i++)
            {
                Button btn = m_btns[i];

                UnityAction changeBtnEvent = GetChangeBtnEvent(i);
                btn.onClick.AddListener(changeBtnEvent);
                m_changeBtnEvents.Add(changeBtnEvent);

                if (clickEvent != null)
                {
                    UnityAction extraClickEvent = GetExtraClickEvent(clickEvent, i);
                    btn.onClick.AddListener(extraClickEvent);
                    m_extraClickEvents.Add(extraClickEvent);
                }
            }
        }
Пример #2
0
 private UnityAction GetExtraClickEvent(LabelBtnClickEvent clickEvent, int index)
 {
     return(() => clickEvent(index));
 }