【发布时间】:2011-02-25 08:34:37
【问题描述】:
在我的UIViewController 中,我有一个带有默认后退按钮的UINavigationController。当用户单击返回按钮时,应该会出现一条警告消息:“您真的要返回吗?”。我知道,不可能捕获后退按钮事件。只能使用viewWillDisappear 并设置一个标志:
- (void)viewWillDisappear:(BOOL)animated {
if (backBtnPressed) {
UIAlertView *alert = [[[UIAlertView alloc] initWithTitle:@"Question" message:@"Do you really want to go back?" delegate:self cancelButtonTitle:@"No" otherButtonTitles: @"Yes", nil] autorelease];
[alert show];
}
}
- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex {
if (buttonIndex == 0) {
// don't go back!
// cancel the back button event
}
else if (buttonIndex == 1) {
// go back
}
}
但是有了这段代码,我就没有机会了!我无法停止返回按钮事件,不是吗?
我是否必须编写自己的后退按钮并将其设置为leftBarButtonItem?或者有人有好主意吗? :-)
感谢您的帮助!
【问题讨论】:
-
此页面上的所有信息都已过时,截至 2021 年 10 月无法使用。请在此处查看接受的答案stackoverflow.com/questions/43584340/…
标签: iphone ios uinavigationcontroller