自定义导航栏-右侧滑返回事件

在开发中我们有时候会遇到这样的需求,在用户使用右滑返回上上级或者指定的控制器,通常在开发过程中我们都会制定BaseViewController或者自定义导航控制器,在子控制器继承父类的时候,我们在程序加载过程中是无法获取到self.navigitionController的,只有在加载完毕才会获取的到,才能作进一步的处理,此时有两个方法 大家可以注意一下

-(void)willMoveToParentViewController:(UIViewController*)parent{

    [super willMoveToParentViewController:parent];

}

-(void)didMoveToParentViewController:(UIViewController*)parent{

 [super didMoveToParentViewController:parent];

}

当页面跳转的时候 parent 是有有值的,在返回的时候 parent 是空值,那么我们就可以在页面已经跳转完毕的时候 做一些事情

此时将导航控制器的手势代理设定为自己,然后遵守相关协议 ,并在相应的方法里做你想做的事情

但是要注意,当return 为YES 时,会影响整个程序的跳转 ,你可以在页面消失的时候做一些相应得处理,比如 取消当前控制器的delegate 

你可能感兴趣的:(自定义导航栏-右侧滑返回事件)