您好,欢迎来到伴沃教育。
搜索
您的当前位置:首页iOS开发-NavigationController侧滑返回失效

iOS开发-NavigationController侧滑返回失效

来源:伴沃教育
//导致侧滑失效的设置
- navigationBarHidden
- navigationItem.hidesBackButton
- navigationItem.leftBarButtonItem/leftBarButtonItems

UINavigationController有一个交互手势

@property(nullable, nonatomic, readonly) UIGestureRecognizer *interactivePopGestureRecognizer NS_AVAILABLE_IOS(7_0) __TVOS_PROHIBITED;

解决方法

@interface SecondViewController () <UIGestureRecognizerDelegate>
@property (nonatomic, strong) id<UIGestureRecognizerDelegate> originalDelegate;
@end
- (void)viewDidAppear:(BOOL)animated {
    [super viewDidAppear:animated];
    self.originalDelegate = self.navigationController.interactivePopGestureRecognizer.delegate;
    self.navigationController.interactivePopGestureRecognizer.delegate = self;
}

- (void)viewDidDisappear:(BOOL)animated {
    [super viewDidDisappear:animated];
    self.navigationController.interactivePopGestureRecognizer.delegate = self.originalDelegate;
    self.originalDelegate = nil;
}

修改侧滑手势的代理,注意在disappear的时候重置回去

Copyright © 2019- bangwoyixia.com 版权所有 湘ICP备2023022004号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务