我确信这将是一个简单的答案,也许是一个我无法实现的方法。这是:
在我的Controller1
我使用pushViewController
将新视图Controller2
推送到我的视图堆栈。我正在收到一个后退按钮。
现在,当我的Controller1
按下后退按钮时,我希望能够检测到Controller2
正在弹出,我们又回到了Controller1
。有意义吗?
我试图用ViewDidAppear
做到这一点,但我不确定如何检测弹出的控制器。这里还有其他答案,但它们都在Controller2
viewWillDisappear
我如何在Swift中做到这一点?
答案 0 :(得分:0)
在不知道更多的情况下,您应该将第一个控制器的引用传递给第二个控制器,以便第二个控制器可以告诉第一个控制器何时完成(这是一个简单的委托关系,也可以使用块/闭包来实现) )。
理想情况下,第一个控制器应该负责解雇第二个控制器,无论是在它获得此回调时,还是更恰当地,当点击“关闭”按钮时。