Пример #1
0
        public void FireEventCache(int key, params object[] args)
        {
            // 先判断目前的事件队列中是否有这个事件,如果有的话,则刷新为最新。因为在同一帧中两次事件的没有作用
            Event2 e = null;

            for (int i = 0; i < mFiredEventList.Count; ++i)
            {
                if (mFiredEventList [i].GetKey() == key)
                {
                    e = mFiredEventList [i];
                    break;
                }
            }

            if (e == null)
            {
                e = mEventPool.Alloc();
                e.Set(key, args);
                mFiredEventList.Add(e);
            }
            else
            {
                e.Set(key, args);
            }
        }
Пример #2
0
        public void FireEvent(int key, params object[] args)
        {
            Event2 e = mEventPool.Alloc();

            e.Set(key, args);
            TrigEvent(e);
        }