拦截iOS系统导航栏返回按钮事件-三种方法

方法一:在dealloc里面书写监听事件,因为只有pop才会调用dealloc,push不会掉用

- (void)dealloc {YLLog(@"123"); }

方法二:在- (void)viewWillDisappear:(BOOL)animated中调用

- (void)viewWillDisappear:(BOOL)animated{

  if ([self.navigationController.viewControllers indexOfObject:self]==NSNotFound) {

    NSLog(@"clicked navigationbar back button");

  }

}

方法三:重写返回按钮,然后调用返回按钮的方法即可:如

- (void)popViewcontrollerFunc {

  UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"" message:@"确定要放弃到手的奖品吗" delegate:self cancelButtonTitle:@"点错啦" otherButtonTitles:@"狠心放弃", nil];alert.tag = 10001;[alert show];

}

posted @ 2017-02-24 11:49  孙富有(iOS工程师)  阅读(8371)  评论(1编辑  收藏  举报