您在下面看到我的 View 层次结构。绿色的 View 是最后一个 View 。我想从最后一个 View 显示另一个 View ,用黑色箭头表示。
但是,当用户想要从该 View 返回时,应显示初始 View (由黄色箭头指示)。我可以从最后一个 View 转到“黑色箭头” View 。但是当用户返回时如何显示初始 View (黄色箭头)?
Best Answer-推荐答案 strong>
METHOD1:嗯,那要看你的segues了,如果都是push类型,那么你的绿色VC也会被嵌入。如果是,那么您可以通过 [self.navigationController popToViewController:desiredViewController animated:YES] 浏览所有层次结构。
此方法的作用如下:弹出 View Controller ,直到指定的 View Controller 位于导航堆栈的顶部。
Reference: UINavigationController Class
METHOD2:如果你仍然想使用模态展示,你可以创建 weak delegate 属性来绑定(bind)你的 greenController 和 Controller ,它呈现它(或使用 NSNotificationCenter 来监听您的 dismiss 模态视图 Controller 事件)。一旦用户按下关闭按钮,呈现 greenController 的 Controller 会将其重定向到没有动画的黄色 Controller 。它会产生一种错觉,即一旦您关闭了下面的 Controller ,它就是黄色 Controller 。但是,这仍然取决于您在黄绿色 Controller 之间的转换需求。
关于iOS 从初始 View 导航到最后一个 View 的第二个 View ,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/22894692/
|