我有一个导航控制器,在其下我有控制器A作为rootviewcontroller,控制器B通过默认推送segue链接到A.
我想要做的是当在B中按下某个动作时,我会要求导航控制器弹出到rootviewcontroller,即A,并在A之上应用一些popovercontroller(或只是另一个视图或另一个窗口)
有人建议我让appdelegate在当前的uiwindow上创建另一个窗口。我认为这是可能的,我想知道是否有更简单/更优雅的解决方案来解决这个问题。
我将能够理解我能做的一般解决方案,并且将更加欣赏Swift中的一些简单代码示例:P
答案 0 :(得分:0)
我将在这里提供自己的答案。
根据我自己的经验,没有弹出的segue因此我们无法从segue完全获得目标视图控制器。但是,UINavigationController有一个属性viewControllers,它基本上都是堆栈中的所有子控制器。
所以在popToRootViewController之前,只需获取VC但调用self.nagivationController.viewControllers [0]并且你已经获得了根视图控制器