Пример #1
0
        public static UIHandlerData GetData(string funcStr, int uiIndex, System.Object content)
        {
            UIHandlerData data = new UIHandlerData(funcStr, uiIndex, content);

            checkAsyncData(ref data);
            return(data);
        }
Пример #2
0
        public static UIHandlerData GetData(LuaTable luaTable)
        {
            UIHandlerData data = new UIHandlerData(luaTable);

            checkAsyncData(ref data);
            return(data);
        }
Пример #3
0
 public void Dispose()
 {
     for (int i = 0; i < mList.Count; i++)
     {
         UIHandlerData data = mList[i];
         data.Dispose();
     }
     mList.Clear();
 }
        public UIHandlerDataAsync(UIHandlerData data)
        {
            FuncStr      = data.FuncStr;
            UIName       = data.UIName;
            UIIndex      = data.UIIndex;
            ContentBefor = data.Content;

            startAsync();

            data.Dispose();
        }
Пример #5
0
 private void convertLuaTable2Data(LuaTable luaTable)
 {
     if (null != luaTable)
     {
         int count = luaTable.RawGet <string, int>("count");
         if (count > 0)
         {
             for (int i = 0; i < count; i++)
             {
                 mList.Add(UIHandlerData.GetData(luaTable.RawGetIndex <LuaTable>(i + 1)));
             }
         }
         luaTable.Dispose();
     }
 }
Пример #6
0
        static void checkAsyncData(ref UIHandlerData data)
        {
            UnityEngine.Object obj = null;
            bool needAsync         = false;

            if (data.FuncStr.EndsWith("sprite", StringComparison.Ordinal))
            {
                obj       = data.Content as Sprite;
                needAsync = false;
            }
            if (data.FuncStr.EndsWith("material", StringComparison.Ordinal))
            {
                obj       = data.Content as Material;
                needAsync = false;
            }
            if (null == obj && needAsync)
            {
                string spriteStr = data.Content as string;
                if (!string.IsNullOrEmpty(spriteStr))
                {
                    data = new UIHandlerDataAsync(data);
                }
            }
        }