我想知道是否可以使用导航控制器按钮返回上一页2。现在,我已经使用此代码自定义按钮
self.navigationItem.leftBarButtonItem =
[[UIBarButtonItem alloc] initWithTitle:mainLib.navCountryTitle
style:UIBarButtonItemStyleBordered
target:self
action:@selector(handleBack:)];
在'回程'方法上,我调用了这一行
[self.navigationController popViewControllerAnimated:YES];
所以在这种情况下它将转到上一个屏幕。但是我想在上一个屏幕之前进入屏幕。
我知道我可以直接调用该屏幕,但我不想这样做,因为在每个屏幕上我都有一个后退按钮,它应该转到之前的屏幕。
答案 0 :(得分:9)
您可以使用其推送索引弹出特定的viewcontroller。如果你知道语法而不是像
那样[self.navigationController popToViewController:[self.navigationController.viewControllers objectAtIndex:indexOfViewController] animated:YES];
我相信,在你的情况下,它将是第一指数。虽然您可以再次更改索引和检查。
[self.navigationController popToViewController:[self.navigationController.viewControllers objectAtIndex:1] animated:YES];
这里的self.navigationController.viewControllers是所有推送的ViewControllers的数组。
希望它有所帮助。