美文网首页
ios整体侧滑

ios整体侧滑

作者: 于国文奋斗的少年 | 来源:发表于2017-12-12 17:57 被阅读0次

    ios侧滑的封装  来点儿实际的 直接撸代码 简单搞定

    a,实现方法 viewdidload中

    - (void)viewDidLoad {

    [super viewDidLoad];

    self.delegate = self;

    __weak typeof(self) weakSelf = self;

    if ([self respondsToSelector:@selector(interactivePopGestureRecognizer)]) {

    self.interactivePopGestureRecognizer.delegate = weakSelf;

    }

    }

    b,实现UIGestureRecognizerDelegate中的方法

    -(BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer{

    if (self.navigationController.viewControllers.count == 1) {

    return NO;

    }else{

    return YES;

    }

    }

    c 实现UINavigationControllerDelegate 的方法

    - (void)navigationController:(UINavigationController *)navigationController didShowViewController:(UIViewController *)viewController animated:(BOOL)animated{

    if ([navigationController respondsToSelector:@selector(interactivePopGestureRecognizer)]) {

    navigationController.interactivePopGestureRecognizer.enabled = YES;

    }

    //使navigationcontroller中第一个控制器不响应右滑pop手势

    if (navigationController.viewControllers.count == 1) {

    navigationController.interactivePopGestureRecognizer.enabled = NO;

    navigationController.interactivePopGestureRecognizer.delegate = nil;

    }

    }

    -(void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated{

    if ([self respondsToSelector:@selector(interactivePopGestureRecognizer)]) {

    self.navigationController.interactivePopGestureRecognizer.enabled = NO;

    }

    [self.navigationController pushViewController:viewController animated:animated];

    }

    这就完成了  奋斗吧骚年

    相关文章

      网友评论

          本文标题:ios整体侧滑

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