用storyboard加入一个Naviagtion Controller接上一个View Controller,点击View Controller里面的Button按钮时跳转到Tab Bar Controller页面。
这个是流程,问题是:运行之后,进入Tab Bar Controller界面,点击左上方的Back按钮时,直接进入上一个View Controller界面,我想在点击Back按钮时弹出“是否确认返回”对话框,请问如何实现?谢谢
有两种方法。
1.
-(void) viewWillDisappear:(BOOL)animated {
if ([self.navigationController.viewControllers indexOfObject:self]==NSNotFound) {
//在这里加上 alertview
[self.navigationController popViewControllerAnimated:NO];
}
[super viewWillDisappear:animated];
}
2.创建一个自定义的 button
- (void)viewDidLoad {
[super viewDidLoad];
UIBarButtonItem *newBackButton = [[UIBarButtonItem alloc] initWithTitle:@"Home" style:UIBarButtonItemStyleBordered target:self action:@selector(home:)];
self.navigationItem.leftBarButtonItem=newBackButton;
}
-(void)home:(UIBarButtonItem *)sender {
//在这里增加一个 alertview
//在 alertview 的回调方法中写上 [self.navigationController popToRootViewControllerAnimated:YES]; 就可以返回了
}