From ea4ecc05b41791501ab66220786a061574cbc986 Mon Sep 17 00:00:00 2001 From: CodeST <694468528@qq.com> Date: Thu, 18 Dec 2025 14:57:28 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=8F=B3=E6=BB=91=E8=BF=94?= =?UTF-8?q?=E5=9B=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Class/Base/VC/BaseNavigationController.m | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/keyBoard/Class/Base/VC/BaseNavigationController.m b/keyBoard/Class/Base/VC/BaseNavigationController.m index 0fe4bbd..7aeb5c5 100644 --- a/keyBoard/Class/Base/VC/BaseNavigationController.m +++ b/keyBoard/Class/Base/VC/BaseNavigationController.m @@ -7,7 +7,7 @@ #import "BaseNavigationController.h" -@interface BaseNavigationController () +@interface BaseNavigationController () @end @@ -26,6 +26,12 @@ if (@available(iOS 14.0, *)) { self.navigationBar.topItem.backButtonDisplayMode = UINavigationItemBackButtonDisplayModeMinimal; } + + // 统一开启“边缘右滑返回”(interactivePopGestureRecognizer 在自定义导航栏/隐藏系统导航栏场景下可能失效) + if (self.interactivePopGestureRecognizer) { + self.interactivePopGestureRecognizer.delegate = self; + self.interactivePopGestureRecognizer.enabled = YES; + } } - (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated{ @@ -41,6 +47,15 @@ [super pushViewController:viewController animated:animated]; } +#pragma mark - UIGestureRecognizerDelegate + +- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer { + if (gestureRecognizer == self.interactivePopGestureRecognizer) { + return self.viewControllers.count > 1; + } + return YES; +} + /// Push 一个 VC,若栈中已存在相同 class 的 VC,则先移除旧的再 push 新的。 - (void)kb_pushViewControllerRemovingSameClass:(UIViewController *)viewController animated:(BOOL)animated {