private Dictionary <string, Type> GetAppRxModelTypeDic(string appId)
            {
                if (RxTypeDict.ContainsKey(appId))
                {
                    return(RxTypeDict[appId]);
                }

                var appAsm   = UnityIOUtility.GetUnityAssembly(appId + "Play");
                var typeDic  = ReflectUtility.GetTypeDictionary <IYuLegoUIRxModel>(appAsm);
                var typeDic2 = ReflectUtility.GetTypeDictionary <IYuLegoScrollViewRxModel>(appAsm);

                typeDic.Combin(typeDic2);
                RxTypeDict.Add(appId, typeDic);
                return(typeDic);
            }
Esempio n. 2
0
        private static void InitAllFieldHandler()
        {
            var asm          = typeof(IExcelFieldHandler).Assembly;
            var handlerTypes = ReflectUtility.GetTypeList <IExcelFieldHandler>(
                false, false, asm);

            foreach (var handlerType in handlerTypes)
            {
                var handler   = (IExcelFieldHandler)Activator.CreateInstance(handlerType);
                var fieldType = handler.FieldType;
                if (!Handlers.ContainsKey(fieldType))
                {
                    Handlers.Add(fieldType, new List <IExcelFieldHandler>());
                }

                var targetHandlers = Handlers[fieldType];
                targetHandlers.Add(handler);
            }
        }
        private void UpdateAllItem()
        {
            Calculate();
            var childs = content.GetAllChild();
            var index  = 0;

            ReflectUtility.InvokeMethod(_legoScrollView, "SetIsMulti", new object[] { isMulti });
            ReflectUtility.SetField(_legoScrollView, "maxPerLine", maxPerLine);
            ReflectUtility.SetField(_legoScrollView, "horizontalPadiding", Horizontalpadiding);
            ReflectUtility.SetField(_legoScrollView, "verticalPadiding", VerticalPadiding);
            ReflectUtility.SetField(_legoScrollView, "xOffset", xOffset);

            foreach (var child in childs)
            {
                var position = (Vector3)ReflectUtility.InvokeMethod(_legoScrollView, "GetItemPosition",
                                                                    new object[] { index });
                child.transform.localPosition = position;
                index++;
            }
        }