Esempio n. 1
0
        private void InitUI()
        {
            isInit = true;;

            Vector2 size    = new Vector2(650, 650);
            Vector2 leftPos = actor ? new Vector2(-size.x * 0f, 0) : new Vector2(size.x * 0f, 0);

            GameObject scrollView = CreateUI.NewScrollView(size, BarType.Vertical, ContentType.VerticalLayout);

            scrollRect = scrollView.GetComponent <ScrollRect>();
            scrollRect.verticalNormalizedPosition = 1;
            Image imgScrollView = scrollView.GetComponentInChildren <Image>();

            imgScrollView.color         = new Color(0.5f, 0.5f, 0.5f, 0.005f);
            imgScrollView.raycastTarget = false;
            RectTransform rScrollView = ((RectTransform)scrollView.transform);

            rScrollView.SetParent(gameObject.transform, false);
            rScrollView.anchoredPosition = leftPos;

            scrollView.GetComponentInChildren <Mask>().enabled = false;

            GameObject    image     = new GameObject("line", new System.Type[] { typeof(RectTransform) });
            RectTransform rItemCell = image.GetComponent <RectTransform>();

            rItemCell.SetParent(transform, false);
            rItemCell.anchoredPosition = new Vector2(10000, 10000);


            GameObject prefab = Warehouse.instance.warehouseItemIcon;


            for (int i = 0; i < Main.settings.numberOfColumns; i++)
            {
                GameObject go = UnityEngine.Object.Instantiate(prefab);
                go.transform.SetParent(rItemCell, false);
            }


            rItemCell.sizeDelta = new Vector2(size.x, size.x / Main.settings.numberOfColumns);
            GridLayoutGroup gridLayoutGroup = image.AddComponent <GridLayoutGroup>();

            gridLayoutGroup.cellSize     = size / Main.settings.numberOfColumns * 0.9f;
            gridLayoutGroup.spacing      = 0.05f * size / Main.settings.numberOfColumns;
            gridLayoutGroup.padding.left = (int)(size.x / Main.settings.numberOfColumns * 0.05f);
            gridLayoutGroup.padding.top  = (int)(size.x / Main.settings.numberOfColumns * 0.05f);


            WarehouseItem itemCell = image.AddComponent <WarehouseItem>();

            bigDataScroll = gameObject.AddComponent <BigDataScroll>();
            bigDataScroll.Init(scrollRect, itemCell, SetCell);
            bigDataScroll.cellHeight = size.x / Main.settings.numberOfColumns;

            Transform  parent = transform.parent;
            ScrollRect scroll = parent.GetComponent <ScrollRect>();

            if (scroll != null)
            {
                if (scroll.verticalScrollbar != null)
                {
                    Image other = scroll.verticalScrollbar.GetComponent <Image>();
                    if (other != null)
                    {
                        RectTransform rect = (RectTransform)rScrollView.Find("ScrollbarVertical");
                        //rect.sizeDelta = new Vector2(10, 0);
                        Image my = rect.GetComponent <Image>();
                        //my.color = new Color(10.9490196f, 0.509803951f, 0.203921571f);
                        my.sprite = other.sprite;
                        my.type   = Image.Type.Sliced;
                    }
                    else
                    {
                        Main.Logger.Log("没找到 ScrollbarVertical Image");
                    }

                    if (scroll.verticalScrollbar.targetGraphic != null)
                    {
                        Image other2 = scroll.verticalScrollbar.targetGraphic.GetComponent <Image>();
                        if (other != null)
                        {
                            RectTransform rect = (RectTransform)rScrollView.Find("ScrollbarVertical/SlidingArea/Handle");
                            //rect.sizeDelta = new Vector2(10, 10);
                            Image my = rect.GetComponent <Image>();
                            //my.color = new Color(0.3882353f, 0.807843149f, 0.8156863f);
                            my.sprite = other2.sprite;
                            my.type   = Image.Type.Sliced;
                        }
                        else
                        {
                            Main.Logger.Log("没找到 Handle Image");
                        }
                    }
                    else
                    {
                        Main.Logger.Log("没找到 Handle");
                    }
                }
            }
            else
            {
                Main.Logger.Log("没找到 ScrollbarVertical");
            }

            SetData();
        }
Esempio n. 2
0
        private void InitUI()
        {
            isInit = true;

            Vector2 size       = new Vector2(200, 600);
            Vector2 pos        = new Vector2(0, 0);
            Vector2 cellSize   = new Vector2(165.0f, 78.0f);
            float   cellWidth  = 165.0f;
            float   cellHeight = 78.0f + 38.5f;
            // Main.Logger.Log("10");

            GameObject scrollView = CreateUI.NewScrollView(size, BarType.Vertical, ContentType.VerticalLayout);

            scrollRect = scrollView.GetComponent <ScrollRect>();
            WorldMapSystem.instance.actorHolder = scrollRect.content;
            rectContent = scrollRect.content;
            rectContent.GetComponent <ContentSizeFitter>().enabled   = false;
            rectContent.GetComponent <VerticalLayoutGroup>().enabled = false;
            // Main.Logger.Log("完");

            scrollRect.verticalNormalizedPosition = 1;
            Image imgScrollView = scrollView.GetComponentInChildren <Image>();

            imgScrollView.color         = new Color(0.5f, 0.5f, 0.5f, 0.005f);
            imgScrollView.raycastTarget = false;
            RectTransform rScrollView = ((RectTransform)scrollView.transform);

            rScrollView.SetParent(gameObject.transform, false);
            rScrollView.anchoredPosition = pos;

            scrollView.GetComponentInChildren <Mask>().enabled = false;
            // Main.Logger.Log("完0");

            GameObject    gItemCell = new GameObject("line", new System.Type[] { typeof(RectTransform) });
            RectTransform rItemCell = gItemCell.GetComponent <RectTransform>();

            rItemCell.SetParent(transform, false);
            rItemCell.anchoredPosition = new Vector2(10000, 10000);
            rItemCell.sizeDelta        = new Vector2(cellWidth, cellHeight);
            //Image imgItemCell = gItemCell.AddComponent<Image>();
            //imgItemCell.color = new Color(1, 0, 0, 0.5f);
            // Main.Logger.Log("完成");

            GameObject prefab = WorldMapSystem.instance.actorIcon;

            for (int i = 0; i < Main.settings.numberOfColumns; i++)
            {
                GameObject go = UnityEngine.Object.Instantiate(prefab);
                go.transform.SetParent(rItemCell, false);
            }
            // Main.Logger.Log("完成0");


            GridLayoutGroup gridLayoutGroup = gItemCell.AddComponent <GridLayoutGroup>();

            gridLayoutGroup.cellSize     = cellSize;
            gridLayoutGroup.spacing      = new Vector2(0, 0);
            gridLayoutGroup.padding.left = (int)(0);
            gridLayoutGroup.padding.top  = (int)(0);
            // Main.Logger.Log("完成1");


            NpcItem itemCell = gItemCell.AddComponent <NpcItem>();

            bigDataScroll = gameObject.AddComponent <BigDataScroll>();
            bigDataScroll.Init(scrollRect, itemCell, SetCell);
            bigDataScroll.cellHeight = cellHeight;

            //GuiBaseUI.Main.LogAllChild(transform, true);


            ScrollRect scroll = transform.GetComponent <ScrollRect>();
            // Main.Logger.Log("完成v");
            RectTransform otherRect = scroll.verticalScrollbar.GetComponent <RectTransform>();
            Image         other     = otherRect.GetComponent <Image>();
            // Main.Logger.Log("完成a");
            RectTransform myRect = scrollRect.verticalScrollbar.GetComponent <RectTransform>();
            //myRect.sizeDelta = new Vector2(10, 0);
            // Main.Logger.Log("完成b");
            Image my = myRect.GetComponent <Image>();

            // Main.Logger.Log("完成e");
            //my.color = new Color(0.9490196f, 0.509803951f, 0.503921571f);
            my.sprite = other.sprite;
            my.type   = Image.Type.Sliced;
            // Main.Logger.Log("完成p");

            // Main.Logger.Log("完成V");
            RectTransform otherRect2 = scrollRect.verticalScrollbar.targetGraphic.GetComponent <RectTransform>();
            Image         other2     = otherRect2.GetComponent <Image>();
            // Main.Logger.Log("完成A");
            RectTransform myRect2 = scrollRect.verticalScrollbar.targetGraphic.GetComponent <RectTransform>();
            // Main.Logger.Log("完成B");
            //myRect2.sizeDelta = new Vector2(10, 10);
            Image my2 = myRect2.GetComponent <Image>();

            // Main.Logger.Log("完成C");
            //my2.color = new Color(0.5882353f, 0.807843149f, 0.8156863f);
            my2.sprite = other2.sprite;
            my2.type   = Image.Type.Sliced;
            // Main.Logger.Log("完成D");


            // Main.Logger.Log("完成3");
            SetData();


            ////test
            //Image imgContent = rectContent.gameObject.GetComponent<Image>();
            //if (imgContent == null)
            //{
            //    imgContent = rectContent.gameObject.AddComponent<Image>();
            //}
            //imgContent.color = new Color(0, 1, 0, 0.9f);
            //Image imgTop = bigDataScroll.top.gameObject.GetComponent<Image>();
            //if (imgTop == null)
            //{
            //    imgTop = bigDataScroll.top.gameObject.AddComponent<Image>();
            //}
            //imgTop.color = new Color(1, 1, 1, 0.9f);
            //Image imgBtm = bigDataScroll.btm.gameObject.GetComponent<Image>();
            //if (imgBtm == null)
            //{
            //    imgBtm = bigDataScroll.btm.gameObject.AddComponent<Image>();
            //}
            //imgContent.color = new Color(0, 0, 0, 0.9f);

            //bigDataScroll.top.name = "Actor,0";
            //bigDataScroll.btm.name = "Actor,0";

            //transform.localScale = transform.localScale * 0.33f;
        }
Esempio n. 3
0
        private void InitUI()
        {
            Vector2 size       = new Vector2(995.0f, 780.0f);
            Vector2 cellSize   = new Vector2(210, 78);
            float   spacing    = 30f;
            float   lineHeight = size.y / 6;

            GameObject scrollView = CreateUI.NewScrollView(size, BarType.Vertical, ContentType.Node);

            ContentSizeFitter contentSizeFitter = scrollView.GetComponentInChildren <ContentSizeFitter>();

            if (contentSizeFitter != null)
            {
                contentSizeFitter.enabled = false;
            }

            scrollRect = scrollView.GetComponent <ScrollRect>();
            scrollRect.verticalNormalizedPosition = 1;
            Image imgScrollView = scrollView.GetComponentInChildren <Image>();

            imgScrollView.color         = new Color(0.5f, 0.5f, 0.5f, 0.005f);// 测试时可以把透明度调成0.5可以看见底板大小是否正确
            imgScrollView.raycastTarget = false;
            RectTransform rScrollView = ((RectTransform)scrollView.transform);

            rScrollView.SetParent(transform, false);
            rScrollView.anchoredPosition = new Vector2(0, 0);

            //scrollView.GetComponentInChildren<Mask>().enabled = false;//测试的时候设置不要遮罩方便看

            GameObject itemCell = new GameObject("line", new System.Type[] { typeof(RectTransform) });// 创建一行的预制件
            //itemCell.AddComponent<Image>().color = new Color(1, 0, 0, 0.5f);//测试的时候加个图片方便看到是否有创建

            RectTransform rItemCell = itemCell.GetComponent <RectTransform>();

            rItemCell.SetParent(transform, false);
            rItemCell.anchoredPosition = new Vector2(10000, 10000); // 把预制件设置到看不见的地方
            rItemCell.sizeDelta        = new Vector2(size.x, lineHeight);
            GameObject prefab = HomeSystem.instance.listActor;      // 这里设置Item预制件

            for (int i = 0; i < Main.settings.numberOfColumns; i++) // 初始化预制件
            {
                GameObject go = UnityEngine.Object.Instantiate(prefab);
                go.transform.SetParent(rItemCell, false);
            }

            GridLayoutGroup gridLayoutGroup = itemCell.AddComponent <GridLayoutGroup>();

            gridLayoutGroup.cellSize     = cellSize;
            gridLayoutGroup.spacing      = new Vector2(spacing, spacing);
            gridLayoutGroup.padding.left = (int)spacing;
            gridLayoutGroup.padding.top  = (int)spacing;



            ActorItem actorItem = itemCell.AddComponent <ActorItem>();

            bigDataScroll = gameObject.AddComponent <BigDataScroll>(); // 添加大数据滚动组件
            bigDataScroll.Init(scrollRect, actorItem, SetCell);        //初始化大数据滚动组件
            bigDataScroll.cellHeight = lineHeight;                     //设置每行高度

            // 设置滚动条图片
            Transform  parent   = transform.parent;
            ScrollRect scroll   = GetComponent <ScrollRect>();//获取原本的组件
            Image      otherBar = scroll.verticalScrollbar.GetComponent <Image>();
            Image      myBar    = scrollRect.verticalScrollbar.GetComponent <Image>();

            myBar.sprite = otherBar.sprite;
            myBar.type   = Image.Type.Sliced;

            Image otherHand = scroll.verticalScrollbar.targetGraphic.GetComponent <Image>();
            Image myHand    = scrollRect.verticalScrollbar.targetGraphic.GetComponent <Image>();

            myHand.sprite = otherHand.sprite;
            myHand.type   = Image.Type.Sliced;

            // Main.Logger.Log("UI改造完毕");
            //GuiBaseUI.Main.LogAllChild(transform.parent, true);

            isInit = true;
            SetData();
        }
Esempio n. 4
0
        private void InitUI()
        {
            hasInit = true;

            Vector2 size = new Vector2(740, 740);

            GameObject scrollView = CreateUI.NewScrollView(size, BarType.Vertical, ContentType.VerticalLayout);

            scrollRect = scrollView.GetComponent <ScrollRect>();
            scrollRect.verticalNormalizedPosition = 1;
            Image imgScrollView = scrollView.GetComponentInChildren <Image>();

            imgScrollView.color         = new Color(0.5f, 0.5f, 0.5f, 0.005f);
            imgScrollView.raycastTarget = false;
            RectTransform rScrollView = scrollView.GetComponent <RectTransform>();

            rScrollView.SetParent(gameObject.transform, false);
            rScrollView.anchoredPosition = Vector2.zero;

            GameObject    image     = new GameObject("line", new System.Type[] { typeof(RectTransform) });
            RectTransform rItemCell = image.GetComponent <RectTransform>();

            rItemCell.SetParent(transform, false);
            rItemCell.anchoredPosition = new Vector2(10000, 10000);

            GameObject prefab = HomeSystem.instance.bookIcon;

            for (int i = 0; i < columns; i++)
            {
                GameObject go = UnityEngine.Object.Instantiate(prefab, Vector3.zero, Quaternion.identity);
                go.transform.SetParent(rItemCell, false);
            }

            rItemCell.sizeDelta = new Vector2(size.x, size.x / columns + 35f);
            GridLayoutGroup gridLayoutGroup = image.AddComponent <GridLayoutGroup>();

            gridLayoutGroup.cellSize     = size / columns * 0.9f;
            gridLayoutGroup.spacing      = 0.05f * size / columns;
            gridLayoutGroup.padding.left = (int)(size.x / columns * 0.05f);
            gridLayoutGroup.padding.top  = (int)(size.x / columns * 0.05f);

            bookCell      = image.AddComponent <BookCell>();
            bigDataScroll = gameObject.AddComponent <BigDataScroll>();
            bigDataScroll.Init(scrollRect, bookCell, SetCell);
            bigDataScroll.cellHeight = size.x / columns + 35f;

            ScrollRect scroll = HomeSystem.instance.bookHolder.parent.parent.GetComponent <ScrollRect>();

            if (scroll != null)
            {
                if (scroll.verticalScrollbar != null)
                {
                    Image other = scroll.verticalScrollbar.GetComponent <Image>();
                    if (other != null)
                    {
                        RectTransform rect = (RectTransform)rScrollView.Find("ScrollbarVertical");
                        Image         my   = rect.GetComponent <Image>();
                        my.sprite = other.sprite;
                        my.type   = Image.Type.Sliced;
                    }
                    else
                    {
                        Main.Logger.Log("没找到 ScrollbarVertical Image");
                    }

                    if (scroll.verticalScrollbar.targetGraphic != null)
                    {
                        Image other2 = scroll.verticalScrollbar.targetGraphic.GetComponent <Image>();
                        if (other != null)
                        {
                            RectTransform rect = (RectTransform)rScrollView.Find("ScrollbarVertical/SlidingArea/Handle");
                            Image         my   = rect.GetComponent <Image>();
                            my.sprite = other2.sprite;
                            my.type   = Image.Type.Sliced;
                        }
                        else
                        {
                            Main.Logger.Log("没找到 Handle Image");
                        }
                    }
                    else
                    {
                        Main.Logger.Log("没找到 Handle");
                    }
                }
            }
            else
            {
                Main.Logger.Log("没找到 ScrollbarVertical");
            }

            SetData();
        }
Esempio n. 5
0
        private void InitUI()
        {
            isInit = true;

            Vector2 size       = new Vector2(230, 830);
            Vector2 pos        = new Vector2(0, 0);
            Vector2 cellSize   = new Vector2(230, 97);
            float   cellWidth  = cellSize.x;
            float   cellHeight = cellSize.y;
            // Main.Logger.Log("10");

            GameObject scrollView = CreateUI.NewScrollView(size, BarType.Vertical, ContentType.VerticalLayout); // 创建滑动UI

            scrollRect = scrollView.GetComponent <ScrollRect>();                                                // 拿到滑动组件
            //WorldMapSystem.instance.actorHolder = scrollRect.content;
            rectContent = scrollRect.content;                                                                   // 内容啊 content
            rectContent.GetComponent <ContentSizeFitter>().enabled   = false;                                   //关闭高度自动适应
            rectContent.GetComponent <VerticalLayoutGroup>().enabled = false;                                   // 关闭自动排序
            // Main.Logger.Log("完");

            scrollRect.verticalNormalizedPosition = 1;                         // 设置最上的位置
            Image imgScrollView = scrollView.GetComponentInChildren <Image>(); // 拿到背景图

            imgScrollView.color         = new Color(0.5f, 0.5f, 0.5f, 1f);     // 背景图颜色
            imgScrollView.raycastTarget = false;                               // 设置背景不可点击
            RectTransform rScrollView = ((RectTransform)scrollView.transform); // 拿到滑动UI

            rScrollView.SetParent(gameObject.transform, false);                // 设置父物体
            rScrollView.anchoredPosition = pos;                                // 设置位置

            //scrollView.GetComponentInChildren<Mask>().enabled = false;
            // Main.Logger.Log("完0");

            GameObject    gItemCell = new GameObject("line", new System.Type[] { typeof(RectTransform) }); // 创建一行
            RectTransform rItemCell = gItemCell.GetComponent <RectTransform>();                            // 得到transform

            rItemCell.SetParent(transform, false);                                                         // 设置父物体
            rItemCell.anchoredPosition = new Vector2(10000, 10000);                                        // 隐藏于遥远虚空
            rItemCell.sizeDelta        = new Vector2(cellWidth, cellHeight);                               // 设置大小
                                                                                                           //Image imgItemCell = gItemCell.AddComponent<Image>();
                                                                                                           //imgItemCell.color = new Color(1, 0, 0, 0.5f);
            // Main.Logger.Log("完成");

            GameObject prefab = ActorMenu.instance.listActor;           // 拿到子物体预制件  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!

            for (int i = 0; i < lineCount; i++)                         // 一行几个
            {
                GameObject go = UnityEngine.Object.Instantiate(prefab); // 创建每行子物体
                go.transform.SetParent(rItemCell, false);               // 设置父物体
                Toggle tog = go.GetComponentInChildren <Toggle>();
                var    tar = tog.targetGraphic;
                // Main.Logger.Log(tog + "隐藏" + tog.graphic + " " + tog.graphic.transform.parent);
                DestroyImmediate(tog);
                Button btn = go.AddComponent <Button>();
                btn.targetGraphic = tar;
            }
            // Main.Logger.Log("完成0");


            GridLayoutGroup gridLayoutGroup = gItemCell.AddComponent <GridLayoutGroup>();   // 控制子物体

            gridLayoutGroup.cellSize     = prefab.GetComponent <RectTransform>().sizeDelta; // 设置子物体大小
            gridLayoutGroup.spacing      = new Vector2(0, 0);                               // 子物体边距
            gridLayoutGroup.padding.left = (int)(12);                                       // 左偏移
            gridLayoutGroup.padding.top  = (int)(0);                                        // 上偏移
            // Main.Logger.Log("完成1");


            ActorItem itemCell = gItemCell.AddComponent <ActorItem>(); // 添加大数据子物体关联组件

            bigDataScroll = gameObject.AddComponent <BigDataScroll>(); // 添加大数据管理组件
            bigDataScroll.Init(scrollRect, itemCell, SetCell);         // 初始化大数据组件
            bigDataScroll.cellHeight = cellHeight;                     // 设置一行高度

            //GuiBaseUI.Main.LogAllChild(transform, true);



            // 以下是设置滑动条图片
            ScrollRect scroll = transform.GetComponent <ScrollRect>();
            // Main.Logger.Log("完成v");
            RectTransform otherRect = scroll.verticalScrollbar.GetComponent <RectTransform>();
            Image         other     = otherRect.GetComponent <Image>();
            // Main.Logger.Log("完成a");
            RectTransform myRect = scrollRect.verticalScrollbar.GetComponent <RectTransform>();
            //myRect.sizeDelta = new Vector2(10, 0);
            // Main.Logger.Log("完成b");
            Image my = myRect.GetComponent <Image>();

            // Main.Logger.Log("完成e");
            //my.color = new Color(0.9490196f, 0.509803951f, 0.503921571f);
            my.sprite = other.sprite;
            my.type   = Image.Type.Sliced;
            // Main.Logger.Log("完成p");

            // Main.Logger.Log("完成V");
            RectTransform otherRect2 = scrollRect.verticalScrollbar.targetGraphic.GetComponent <RectTransform>();
            Image         other2     = otherRect2.GetComponent <Image>();
            // Main.Logger.Log("完成A");
            RectTransform myRect2 = scrollRect.verticalScrollbar.targetGraphic.GetComponent <RectTransform>();
            // Main.Logger.Log("完成B");
            //myRect2.sizeDelta = new Vector2(10, 10);
            Image my2 = myRect2.GetComponent <Image>();

            // Main.Logger.Log("完成C");
            //my2.color = new Color(0.5882353f, 0.807843149f, 0.8156863f);
            my2.sprite = other2.sprite;
            my2.type   = Image.Type.Sliced;
            // Main.Logger.Log("完成D");


            // Main.Logger.Log("完成3");
            SetData();
        }