예제 #1
0
        public Transform SetTabsUI(ITabsUI tabsUI, int pageCount, int width, int length)
        {
            for (int i = 1; i <= MAX_TABS; i++)
            {
                RectTransform buttonTrans = (RectTransform)buttonsRoot.Find(BUTTONS_NAME + i.ToString());
                if (i <= pageCount)
                {
                    buttonTrans.gameObject.SetActive(true);
                    buttonTrans.sizeDelta        = new Vector2(50f, 34.375f);
                    buttonTrans.anchoredPosition = new Vector2(25f + 3.125f * i + 50 * (i - 1), -14.0625f);
                }
                else
                {
                    buttonTrans.gameObject.SetActive(false);
                }
            }
            this.tabsUI    = tabsUI;
            this.pageCount = pageCount;
            ((RectTransform)transform).sizeDelta = new Vector2(width, length);
            gameObject.SetActive(true);

            GameObject go = new GameObject("TempRoot");

            go.transform.SetParent(this.transform);
            RectTransform rec = go.AddComponent <RectTransform>();

            rec.anchorMin        = new Vector2(0, 1);
            rec.anchorMax        = new Vector2(0, 1);
            rec.sizeDelta        = Vector2.zero;
            rec.anchoredPosition = Vector2.zero;
            return(go.transform);
        }
예제 #2
0
 public void CloseTabsUI()
 {
     //StopCoroutine(CheckCurrentSelect());
     tabsUI.CloseTabsUI();
     tabsUI      = null;
     pageCount   = 0;
     currentPage = 1;
     UIManager.Instance.CloseModel();
     tabsUICanvas.gameObject.SetActive(false);
     //startShowPage = false;
     currentPageButtons = null;
     currentObjToButton = null;
 }
예제 #3
0
        /// <summary>
        /// 设置一个TabUI
        /// 返回自由使用的一个Canvas区域
        /// </summary>
        public RectTransform SetTabsUI(ITabsUI tabsUI, int pageCount)
        {
            currentPageButtons = new List <Button>();
            currentObjToButton = new Dictionary <GameObject, Button>();
            for (int i = 0; i < MAX_TABS; i++)
            {
                if (i < pageCount)
                {
                    allPageButtons[i].gameObject.SetActive(true);
                    currentPageButtons.Add(allPageButtons[i]);
                }
                else
                {
                    allPageButtons[i].gameObject.SetActive(false);
                }
            }
            // 设置导航!
            // 算了不应该设置导航, 要么鼠标点击, 要么QE切换页面
            for (int i = 0; i < pageCount; i++)
            {
                currentObjToButton.Add(currentPageButtons[i].gameObject, currentPageButtons[i]);
                var btn = currentPageButtons[i];

                Navigation navigation = btn.navigation;
                navigation.mode = Navigation.Mode.None;
                //navigation.selectOnLeft = currentPageButtons[((i - 1) + pageCount) % pageCount];
                //navigation.selectOnRight = currentPageButtons[(i + 1) % pageCount];
                btn.navigation = navigation;
            }
            this.tabsUI    = tabsUI;
            this.pageCount = pageCount;
            tabsUICanvas.gameObject.SetActive(true);

            UIManager.Instance.SetAsModel(tabsUICanvas.gameObject, 1f);
            return(contentRoot);
        }