拦截iOS7中的后退导航

时间:2013-09-23 03:18:19

标签: ios uinavigationcontroller ios7

如果他们没有保存更改,我想阻止某人返回我的导航控制器。 SO上的大多数帖子讨论覆盖后退按钮(使用各种技术来完成此操作)。但是,iOS7允许您现在滑动以返回navigationViewController ...

我确实看到UINavigationControllerDelegate看起来像我想要实现的delegate的正确类型,但我认为无法取消导航操作。任何想法如何做到这一点?

1 个答案:

答案 0 :(得分:1)

不幸的是,在iOS7中没有任何改变,如果你想对它进行一些检查,你仍然需要伪造你的后退按钮。

顺便说一句,因为你不需要伪造箭头按钮。

编辑:

这样做:

UIButton *backButton = [[UIButton alloc] initWithFrame: CGRectMake(0, 0, 44.0f, 30.0f)];
[backButton setImage:[UIImage imageNamed:@"back.png"]  forState:UIControlStateNormal];
[backButton addTarget:self action:@selector(popVC) forControlEvents:UIControlEventTouchUpInside];
self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:backButton];