当用户按下后退按钮从活动的UINavigationController弹出当前的UIViewController时,我需要 - 在某些特殊情况下 - 以编程方式从同一个导航控制器中弹出另一个UIViewController(新的顶部)。 (没有详细说明,请相信我这不违反Apples的人机界面准则,相反,如果我不弹出额外的VC,它可能会违反准则)。额外的popViewControllerAnimated:当用户按下后退按钮?
我能想到的唯一的办法是将一个popViewControllerAnimated:
在viewWillDisappear:
,但不幸的是,这并不工作(即使我想弹出仍然是VC显示为self.navigationController.viewControllers
的最后一个对象)。我在通话中尝试了YES和NO。
我找不到一种方法来检测VC何时会在viewWillDisappear:
之前弹出,因为UINavigationControllerDelegate
没有检测VC什么时候会弹出的行为,只有在它将要被推送时才会被弹出。
有没有办法做到这一点?
因此,你试图做的是在按下后退按钮弹出第二个VC以回到第一个VC之后立即呈现/推第三个VC? – user523234 2012-07-16 15:58:25
不需要。我想要的是当用户在第三个VC中触摸后退按钮时,从第三个VC直接跳到第一个VC(正如我所说的,在这种情况下,这不违背Apple的HIG)。 – 2012-07-19 15:15:07