Beispiel #1
0
 public static bool LoadTexture(string path, TexEventHandler cb)
 {
     if (!FindManager())
     {
         return(false);
     }
     Inst.StartCoroutine(Inst.DoLoadTexture(path, cb));
     return(true);
 }
Beispiel #2
0
 //UISliderEx OnLoadUISlider(string uiName, string atlasList)
 //{
 //    float sTime = Time.realtimeSinceStartup;
 //    GameObject uiObj = Instantiate(mUIList[uiName]) as GameObject;
 //    uiObj.name = uiName;
 //    uiObj.SetActive(true);
 //    UISliderEx ret = uiObj.GetComponent<UISliderEx>();
 //    if (null != ret)
 //    {
 //        bool noNeedAtlas = true;
 //        string[] list = atlasList.Split("#".ToCharArray());
 //        List<int> aidList = new List<int>();
 //        for (int i = 0; i < list.Length; ++i)
 //        {
 //            if (string.IsNullOrEmpty(list[i]))
 //                continue;
 //            if (System.Enum.IsDefined(typeof(UIAtlasType), list[i]))
 //            {
 //                UIAtlasType at = (UIAtlasType)System.Enum.Parse(typeof(UIAtlasType), list[i]);
 //                noNeedAtlas = false;
 //                ret.AddRefAtlas(at);
 //                aidList.Add((int)at);
 //            }
 //        }
 //        if (noNeedAtlas)
 //            ret.DoReadyShowing();
 //        else
 //        {
 //            for (int i = 0; i < aidList.Count; ++i)
 //                StartCoroutine(DoLoadAtlas(aidList[i], ret));
 //        }
 //    }
 //    LogSys.Debug("~~~inst ui[" + uiName + "]used:" + (Time.realtimeSinceStartup - sTime).ToString());
 //    return ret;
 //}
 IEnumerator DoLoadTexture(string path, TexEventHandler cb)
 {
     if (!mTextureList.ContainsKey(path))
     {
         yield return(StartCoroutine(DoLoadTexture(path)));
     }
     if (mTextureList.ContainsKey(path))
     {
         mTextureList[path].Second++;
         if (null != cb)
         {
             if (!cb(mTextureList[path].First))
             {
                 RemoveTexture(path);
             }
         }
     }
 }