Ejemplo n.º 1
0
        private static GameObject Toggle()
        {
            System.Action <GameObject> callback = (go) =>
            {
                var toggle = go.GetComponent <Toggle>();
                var image  = go.AddComponent <NoOverdrawImage>();
                toggle.targetGraphic = image;

                if (go.transform.parent != null)
                {
                    var toggleGroup = go.transform.parent.GetComponent <ToggleGroup>();
                    if (toggleGroup != null)
                    {
                        toggle.group = toggleGroup;
                    }
                }

                GameObject enableGo = new GameObject("Enable");
                enableGo.AddComponent <RectTransform>();
                enableGo.transform.SetParent(go.transform);
                GameObject disableGo = new GameObject("Disable");
                disableGo.AddComponent <RectTransform>();
                disableGo.transform.SetParent(go.transform);

                var toggleExtend = go.AddComponent <ToggleExtend>();
                ReflectionHelper.BindMenber(typeof(ToggleExtend), "m_Toggle", toggleExtend, toggle);
                ReflectionHelper.BindMenber(typeof(ToggleExtend), "m_EnableStateRoot", toggleExtend, enableGo);
                ReflectionHelper.BindMenber(typeof(ToggleExtend), "m_DisableStateRoot", toggleExtend, disableGo);
            };
            return(CreateGO <Toggle>("Toggle_", callback));
        }
Ejemplo n.º 2
0
        private static GameObject ProgressCircle()
        {
            System.Action <GameObject> callback = (go) =>
            {
                var progress = go.GetComponent <GProgress>();
                var image    = go.AddComponent <Image>();
                HandleImage(image);

                var rect = go.GetComponent <RectTransform>();
                rect.SetSize(new Vector2(200, 200));

                GameObject    progressImgGo   = new GameObject("ImgProgress", typeof(Image));
                RectTransform rectProgressImg = progressImgGo.GetComponent <RectTransform>();
                rectProgressImg.SetAnchor(AnchorPresets.StretchAll, 0, 0);
                rectProgressImg.SetSize(rect.sizeDelta);
                progressImgGo.transform.SetParent(go.transform);

                var progressImg = progressImgGo.GetComponent <Image>();
                HandleImage(progressImg);
                progressImg.type          = UnityEngine.UI.Image.Type.Filled;
                progressImg.fillMethod    = UnityEngine.UI.Image.FillMethod.Radial360;
                progressImg.fillOrigin    = 2;
                progressImg.fillClockwise = false;

                GameObject    progressTxtGo = new GameObject("TxtProgress", typeof(Text));
                RectTransform rectText      = progressTxtGo.GetComponent <RectTransform>();
                rectText.SetAnchor(AnchorPresets.StretchAll, 0, 0);
                rectText.SetSize(rect.sizeDelta);
                progressTxtGo.transform.SetParent(go.transform);
                Text progressTxt = progressTxtGo.GetComponent <Text>();
                HandleText(progressTxt);

                ReflectionHelper.BindMenber(typeof(GProgress), "m_ImgProgress", progress, progressImg);
                ReflectionHelper.BindMenber(typeof(GProgress), "m_TxtProgress", progress, progressTxt);
                progress.SetProgress(0.6f);
            };
            return(CreateGO <GProgress>("Progress_", callback));
        }