繁体   English   中英

Segue/Push 上隐藏的导航栏 (Swift)

[英]Navigation Bar Hidden on Segue/Push (Swift)

我使用以下代码从孩子重定向到父母(除了我必须在父母身上加载不同的数据——把它想象成一个带有按钮的聊天应用程序来查看你的个人资料,你可以点击你的其他朋友重定向到不同的聊天,即不同的数据集)。 我最初使用


let popOverVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(identifier: "parent") as! UIViewController
       self.navigationController?.pushViewController(popOverVC, animated: true)


但这让我可以通过向左滑动 go 回到上一个聊天(我尝试通过隐藏后退按钮禁用它,使用

navigationController?.interactivePopGestureRecognizer?.isEnabled = false

而且它也没有禁用向后滑动功能(我在 ViewDidLoad、ViewWillAppear、ViewWillLayoutSubViews 中使用了它,但它仍然不起作用;我仍然可以滑动回到以前的聊天)。 所以我尝试使用以下内容,虽然它有效,但我的导航栏会消失。

navigationController?.setNavigationBarHidden(false, animated: true)

当我使用 pushViewController 时工作(但它仍然会让我向后滑动)并且当我使用根 VC 时它不起作用(但它禁用向后滑动)

这是我正在谈论的rootVC方法:

let window = UIApplication.shared.windows[0] as UIWindow
    popOverVC.navigationController?.setNavigationBarHidden(false, animated: true)
  window.rootViewController = popOverVC





与大多数 iOS 用户一样,go 通过轻扫返回,按下返回按钮则减少。 因为使用 modal segue 而不是 push segue 会更合理,因为 push segue 并没有那么大的转移。 您可以禁用后退按钮。

self.navigationController?.navigationItem.backBarButtonItem?.isEnabled = false

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM