开发者社区> 问答> 正文

如何仅为UITabbarController禁用UINaviation刷卡弹出手势?

我正在开发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

}

这个滑动手势导航弹出很好,但我只想禁用它只为选项卡条控制器。当我向左滑动到选项卡控制器时,会弹出显示“登录”和“签名”按钮的屏幕。

因此,我的问题是如何禁用某些屏幕在导航堆栈中的滑动手势弹出。

展开
收起
游客5akardh5cojhg 2019-12-11 21:57:30 478 0
1 条回答
写回答
取消 提交回答
  • 您需要在您想要的VC中禁用“interactivePopGestureRecognizer”,使其无法在viewDidLoad中添加此代码段。

    navigationController?.interactivePopGestureRecognizer?.isEnabled = false
    
    

    如果您想在其他VC中启用,请确保通过使用-

    navigationController?.interactivePopGestureRecognizer?.isEnabled = true
    
    

    试试看!

    2019-12-11 21:57:55
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
3D动画的菜谱式灯光与云渲染 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载