/// <summary> /// ScrollRect.contentが機能した後に実行する /// </summary> /// <param name="action">実行したい処理</param> /// <returns></returns> private IEnumerator DelayScrollContent(Action action) { ScrollRect scrollRect = m_CarouselToggler.GetComponentInChildren <ScrollRect>(); while (scrollRect.content.rect.width == 0 || TabGroupList.Any(q => q.Toggle == null)) { yield return(null); } action(); }
/// <summary> /// サブタブ構築 /// </summary> /// <param name="_seq"></param> private void setupSubTab(MAINMENU_SEQ _seq) { IsViewTabList = true; TabGroupList.Clear(); scrollRect.content.anchoredPosition = new Vector2(0.0f, scrollRect.content.anchoredPosition.y); switch (m_SubMenuType) { case SUB_TAB_MENU_TYPE.FRIEND: //case SUB_TAB_MENU_TYPE.HELP: setupSubTabFriend(_seq); break; case SUB_TAB_MENU_TYPE.SCRATCH: setupSubTabScratch(_seq); break; } }
/// <summary> /// サブタブ設定 /// </summary> /// <param name="_seq"></param> public void SetSubTab(MAINMENU_SEQ _seq) { SUB_TAB_MENU_TYPE _next = getSubTabType(_seq); if (_next == SUB_TAB_MENU_TYPE.NONE) { TabGroupList.Clear(); m_SubMenuType = SUB_TAB_MENU_TYPE.NONE; StartCoroutine(TabClearWait()); } else if (m_SubMenuType != _next || m_IsRestTabs == true) { m_SubMenuType = _next; setupSubTab(_seq); m_IsRestTabs = false; } else { changeSubTab(_seq); } }
public void AddData(SubTabContext subtab) { if (TabGroupList.Count == 0) { SubTabGroupContext addGroup = new SubTabGroupContext(); addGroup.SubTabList.Add(subtab); TabGroupList.Add(addGroup); } else { SubTabGroupContext group = TabGroupList[TabGroupList.Count - 1]; if (group.SubTabList.Count < 5) { group.SubTabList.Add(subtab); } else { SubTabGroupContext addGroup = new SubTabGroupContext(); addGroup = new SubTabGroupContext(); addGroup.SubTabList.Add(subtab); TabGroupList.Add(addGroup); } } }