65 lines
2.3 KiB
Objective-C
65 lines
2.3 KiB
Objective-C
//
|
|
// QXRoomNavigationController.m
|
|
// QXLive
|
|
//
|
|
// Created by 启星 on 2025/10/27.
|
|
//
|
|
|
|
#import "QXRoomNavigationController.h"
|
|
|
|
@implementation QXRoomNavigationController
|
|
|
|
- (void)viewDidLoad {
|
|
[super viewDidLoad];
|
|
// Do any additional setup after loading the view.
|
|
self.interactivePopGestureRecognizer.delegate = self;
|
|
self.delegate = self;
|
|
}
|
|
-(void)viewWillAppear:(BOOL)animated{
|
|
[super viewWillAppear:animated];
|
|
}
|
|
|
|
-(void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated{
|
|
if (self.viewControllers.count == 1) {
|
|
viewController.hidesBottomBarWhenPushed = YES;
|
|
}
|
|
// if ([self respondsToSelector:@selector(interactivePopGestureRecognizer)]) {
|
|
// self.interactivePopGestureRecognizer.enabled = YES;
|
|
// }
|
|
[super pushViewController:viewController animated:animated];
|
|
}
|
|
//-(UIViewController *)popViewControllerAnimated:(BOOL)animated{
|
|
// if (self.childViewControllers.count == 2) {
|
|
// if ([self respondsToSelector:@selector(interactivePopGestureRecognizer)]) {
|
|
// self.interactivePopGestureRecognizer.enabled = YES;
|
|
// }
|
|
// }
|
|
// return [super popViewControllerAnimated:animated];
|
|
//}
|
|
-(void)navigationController:(UINavigationController *)navigationController didShowViewController:(UIViewController *)viewController animated:(BOOL)animated{
|
|
if (self.childViewControllers.count > 1) {
|
|
if ([self respondsToSelector:@selector(interactivePopGestureRecognizer)]) {
|
|
if ([self.visibleViewController isKindOfClass:NSClassFromString(@"QXRoomViewController")] || [self.visibleViewController isKindOfClass:NSClassFromString(@"QXChirldViewController")]) {
|
|
self.interactivePopGestureRecognizer.enabled = NO;
|
|
}else{
|
|
self.interactivePopGestureRecognizer.enabled = YES;
|
|
}
|
|
}
|
|
}else{
|
|
if ([self respondsToSelector:@selector(interactivePopGestureRecognizer)]) {
|
|
self.interactivePopGestureRecognizer.enabled = NO;
|
|
}
|
|
}
|
|
}
|
|
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer {
|
|
return YES;
|
|
}
|
|
|
|
- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer {
|
|
if (self.viewControllers.count == 1) {
|
|
return NO;
|
|
}
|
|
return YES;
|
|
}
|
|
@end
|