public U9Transition GetPopViewTransition(int popCount = 1, bool force = false, bool displayFirst = false) { //PrintStack(); List <U9Transition> popTransitions = new List <U9Transition>(); while (viewStack.Count > 0 && popCount > 0) { popTransitions.Add(viewStack.Pop().GetHideTransition(force)); popCount--; } U9View newView = null; if (viewStack.Count > 0) { newView = viewStack.Peek(); } U9Transition displayNewView = null; if (newView) { if (!newView.IsDisplaying) { displayNewView = newView.GetDisplayTransition(force); } else { newView.EnableInteraction(); } } //PrintStack(); if (displayFirst) { return(U9T.S(displayNewView, U9T.S(popTransitions.ToArray()))); } else { return(U9T.S(U9T.S(popTransitions.ToArray()), displayNewView)); } }