我正在开发iOS应用程序,我正在使用SWIFT 4.2和Xcode 10.3。
我必须让滑动手势弹出UIViewController在……里面UINavigationController这是我的应用程序屏幕流:
https://i.stack.imgur.com/k8oAq.jpg
流程描述:
我在用UINavigationController飞溅的屏幕打开了rootViewController. 在飞溅屏幕上3秒后,我推送屏幕,用户可以注册和登录。 在登录或注册后,我正在推送UITabbarController. 中有四个选项卡。tabBarController每一个都包含navigationController. 要打开购物车屏幕,我也要把它从UITabbarController. 后购物车屏幕,我是推送支付屏幕。 我使用下面的代码启用屏幕弹出使用滑动手势。我在Splash屏幕上添加了这一行:
override func viewWillAppear(_ animated: Bool) {
self.navigationController?.interactivePopGestureRecognizer?.delegate = nil
}
这个滑动手势导航弹出很好,但我只想禁用它只为选项卡条控制器。当我向左滑动到选项卡控制器时,会弹出显示“登录”和“签名”按钮的屏幕。
因此,我的问题是如何禁用某些屏幕在导航堆栈中的滑动手势弹出。
您需要在您想要的VC中禁用“interactivePopGestureRecognizer”,使其无法在viewDidLoad中添加此代码段。
navigationController?.interactivePopGestureRecognizer?.isEnabled = false
如果您想在其他VC中启用,请确保通过使用-
navigationController?.interactivePopGestureRecognizer?.isEnabled = true
试试看!
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。