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); }
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; }
/// <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); }