예제 #1
0
 public static void OnLoad()
 {
     if (OmfSettings.Instance.IsEnabled)
     {
         FrameworkEngine.Init();
     }
 }
예제 #2
0
        private static void InitializeContainer(IQFrameworkContainer container)
        {
            container.RegisterInstance(container);
            var viewTypes = FrameworkEngine.GetDerivedTypes <ISubModule>(false, false).ToArray();

            Debug.Log($"viewTypes = {viewTypes.Length} ");
            foreach (var view in viewTypes)
            {
                var viewInstance = Activator.CreateInstance(view) as ISubModule;
                if (viewInstance == null)
                {
                    continue;
                }
                container.RegisterInstance(viewInstance, view.Name, false);
                container.RegisterInstance(viewInstance.GetType(), viewInstance);
            }
            container.InjectAll();

            _subModules = Container.ResolveAll <ISubModule>().ToList();
            Debug.Log($"_subModules = {_subModules.Count} ");

            foreach (var view in _subModules)
            {
                view.Init(Container);
            }

//            foreach (var view in _subModules)
//            {
//                container.Inject(view);
//            }
        }