Example #1
0
        static private void Init()
        {
            AddComponentDataSource.ShowNameToComponentName();
            AddComponentListener.Instance.Init();
#if !UNITY_2020_2
            PackageManager.Instance.Init();
#endif
            //SceneGrid.Instance.Init();
        }
        /// <summary>
        /// 选中要添加的组件
        /// </summary>
        /// <param name="para"></param>
        public void ItemSelect(Object para)
        {
            if (para.GetType().Name == COMPONENT_ITEM_TYPE_NAME)
            {
                componentItem.SetInstance(para);
                string showName      = (string)componentItem.displayName.GetValue();
                string componentName = AddComponentDataSource.GetComponentName(showName);
                var    gos           = Selection.gameObjects;
                foreach (var go in gos)
                {
                    Component com = go.GetComponent(componentName);
                    if (com == null)
                    {
                        Debug.LogError("can not find com ", go);
                        continue;
                    }

                    switch (componentName)
                    {
                    case ("Image"):
                    {
                        AddComponentOptimizing.OptimizingImage(com as Image);
                        break;
                    }

                    case ("Text"):
                    {
                        AddComponentOptimizing.OptimizingText(com as Text);
                        break;
                    }

                    case ("Mask"):
                    {
                        AddComponentOptimizing.OptimizingMask(com as Mask);
                        break;
                    }

                    default:
                    {
                        Debug.Log("add " + componentName);
                        break;
                    }
                    }
                }

                isClear = false;
            }
        }