我有3个视图控制器:A,B和C. A是初始,它有2个按钮:一个是重定向到B,第二个是C。当按下B时,B按下的用户被重定向到C.现在在C中的导航栏上,当我按下后退按钮时,我希望被重定向到A总是,从不到B.这可能吗?
这是我想要实现的基本功能:
A)
A->B->C C back to A
b)中
A->C C back to A
答案 0 :(得分:0)
唯一的方法是通过自定义按钮替换后退按钮。
答案 1 :(得分:0)
你可以用presentview控制器作为模态视图实现这一点。首先从按下第一个按钮出现b view.if secnd按钮被按下当前c视图和c视图控制器放回按钮并添加代表并实现委托视图控制器。您必须在视图控制器中逐个关闭一个视图。
答案 2 :(得分:0)
在阅读了你所说的内容后,我认为你的意思是为每个按钮实现自定义操作。我会这样做(在Swift中)是这样的:
@IBAction func pressButton(sender : UIButton){
var SecondView :ViewController2
SecondView = self.storyboard?.instantiateViewControllerWithIdentifier("SecondView") as ViewController2
self.presentViewController(SecondView, animated: true, completion:nil)
self.viewWillDisappear(true)
}
这个方法我已经使用了很多,我知道有另一种使用segues的方法,但你仍然使用@ IBActions。你只需要创建一个新的segue(标识符),然后在prepareforSegue
方法中你会说当发生了什么segue被触发
答案 3 :(得分:0)
for (UIViewController *controller in self.navigationController.viewControllers)
{
if ([controller isKindOfClass:[A class]])
{
[self.navigationController popToViewController:controller
animated:YES];
break;
}
}