protected IEnumerator ShowSubcanvasCoroutine (CanvasController subCC, SubcanvasShowStyle style, object context = null) { CanvasTransitionContext ctContext = new CanvasTransitionContext(this, subCC, context); subCC.CanvasWillShow(ctContext); switch (style) { case SubcanvasShowStyle.Instant: yield return new WaitForEndOfFrame(); subCC.Canvas.enabled = true; subCC.CanvasGroup.alpha = 1; subCC.CanvasDidShow(); break; case SubcanvasShowStyle.FadeIn: subCC.Canvas.enabled = true; CrossFadeCanvasGroup(subCC.CanvasGroup, 1, 0.4f); yield return new WaitForSeconds(0.4f); subCC.CanvasDidShow(); break; } }
protected void ShowSubcanvas (CanvasController subCC, SubcanvasShowStyle style, object context = null) { if (subCC.ParentCanvasController != this) { Debug.LogError("Cannot show a subcanvas that is not a child of this CanvasController"); return; } StartCoroutine(ShowSubcanvasCoroutine(subCC, style, context)); }