Example #1
0
        //-------∽-★-∽------∽-★-∽--------∽-★-∽数据操作∽-★-∽--------∽-★-∽------∽-★-∽--------//

        protected override LoadReq ExcuteLoad(LoadReq req_)
        {
            LoadReq req = req_;
            AbstractLoader loader = LoaderFactory.GetLoader(req_.type);
            
            req = loader.LoadAsync(req);
            if (loader.isDone)
            {
                LoaderFactory.CloseLoader(loader);
                return req;
            }

            req.OnStart();

            //m_isAsync = isAsync_;
            //m_progress = 0;
            //m_data = null;
            //m_errorStr = null;

            m_isOpen = true;
            m_done = false;
            m_loading = true;

            m_loaders.Add(loader);
            SchUpdate(true);

            //__print("○load start: " + loader.UrlStr);
            NotifyAsynEvt(LOAD_EVT.START, req);

            return req;
        }
Example #2
0
        protected AbstractLoader StartLoader(LoadReq req_)
        {
            AbstractLoader loader = LoaderFactory.GetLoader(req_.type);

            loader.LoadAsync(req_);
            return(loader);
        }
Example #3
0
        //-------∽-★-∽------∽-★-∽--------∽-★-∽后台加载∽-★-∽--------∽-★-∽------∽-★-∽--------//

        /// <summary>
        /// 异步加载
        /// </summary>
        /// <param name="req_"></param>
        /// <param name="onComplete_"></param>
        /// <returns></returns>
        static public LoadReq LoadAsync(LoadReq req_, CALLBACK_LoadReq onComplete_ = null)
        {
            if (onComplete_ != null)
            {
                req_.on_complete -= onComplete_;
                req_.on_complete += onComplete_;
            }

            LoadReq req = m_subLoader.LoadAsync(req_);

            return(req);
        }
Example #4
0
        void LoadOne()
        {
            LoadReq req_ = m_loadReqQue.load_reqs[m_load_idx];

            if (m_loader == null || m_loader.Req.type != req_.type)
            {
                LoaderFactory.CloseLoader(m_loader);
                m_loader = LoaderFactory.GetLoader(req_.type);
            }

            m_loader.LoadAsync(req_);

            CheckLoaded();
        }