Пример #1
0
    private int m_nMaxSize           = 128;                         //池子中每种类型的GameObject可容纳的子队列大小

    // 从Bundle加载一个可复用的ITEM
    public void CreateUIFromBundle(UIPathData uiData, string objName, CreatePoolObjDelegate delFun, object param1, object param2)
    {
        GameObject obj = ReUseElement(objName);

        if (null == obj)
        {
            if (m_nMaxGameObjectType > 0 && m_ActivePool.Count == m_nMaxGameObjectType)
            {
                if (null != delFun)
                {
                    delFun(null, param1, param2);
                }
                return;
            }

            UIManager.LoadItem(uiData, OnLoadBundleItem, new LoadBundleParam(delFun, param1, param2, uiData, objName));
        }
        else
        {
            if (null != delFun)
            {
                delFun(obj, param1, param2);
            }
        }
    }
Пример #2
0
 public LoadBundleParam(CreatePoolObjDelegate delFun, object param1, object param2, UIPathData uiData, string objName)
 {
     m_delFun     = delFun;
     m_userParam1 = param1;
     m_userParam2 = param2;
     m_uiData     = uiData;
     m_objName    = objName;
 }