美文网首页
UINavigationController隐藏后侧滑返回

UINavigationController隐藏后侧滑返回

作者: Sh1mmer | 来源:发表于2018-09-11 10:05 被阅读0次

    问题:当我们隐藏UINavigationController会发现,我们的侧滑返回就没有响应了.
    解决问题:
    首先我们新建一个BaseNavigationViewController继承UINavigationController.
    用来作为我们的navigationController

    BaseNavigationViewController.m中

    @interface BaseNavigationViewController ()<UINavigationControllerDelegate>
    @end
    
    @implementation BaseNavigationViewController 
    - (void)viewDidLoad {
        [super viewDidLoad];
        // Do any additional setup after loading the view.
        self.delegate = self;
        self.interactivePopGestureRecognizer.delegate = (id)self.interactivePopGestureRecognizer;
    }   
    // 当控制器显示完毕的时候调用
    - (void)navigationController:(UINavigationController *)navigationController didShowViewController:(UIViewController *)viewController animated:(BOOL)animated {
        //这里是为了防止在跟视图上侧滑出现的bug(具体什么原因也不知道);
        if (navigationController.viewControllers.count == 1) {
            self.interactivePopGestureRecognizer.enabled = NO;
        }else{
            self.interactivePopGestureRecognizer.enabled = YES;
        }
    }
    

    到这基本就差不多了

    相关文章

      网友评论

          本文标题:UINavigationController隐藏后侧滑返回

          本文链接:https://www.haomeiwen.com/subject/oipygftx.html