gpt4 book ai didi

swift - 从导航 Controller 快速停止导航

转载 作者:搜寻专家 更新时间:2023-11-01 05:37:40 27 4
gpt4 key购买 nike

我有一个登录页面的导航 Controller ,登录成功后,我想关闭导航,这意味着一旦登录成功,用户将不允许返回登录页面。我试图创建另一个 Storyboard并执行 segue,但导航栏仍然存在,无论如何以编程方式或从 Storyboard中关闭导航栏? enter image description here

我不希望“配对”按钮出现在此页面上。

最佳答案

我找到了解决方案!

我在 iOS 11 和 iOS 13 上测试过,运行良好:)

protocol CustomNavigationViewControllerDelegate {
func shouldPop() -> Bool
}

class CustomNavigationViewController: UINavigationController, UINavigationBarDelegate {
var backDelegate: CustomNavigationViewControllerDelegate?

func navigationBar(_ navigationBar: UINavigationBar, shouldPop item: UINavigationItem) -> Bool {
return backDelegate?.shouldPop() ?? true
}
}

class SecondViewController: UIViewController, CustomNavigationViewControllerDelegate {
override func viewDidLoad() {
super.viewDidLoad()

(self.navigationController as? CustomNavigationViewController)?.backDelegate = self
}

func shouldPop() -> Bool {
if (needToShowAlert) {
showExitAlert()
return false

} else {
return true
}
}
}

关于swift - 从导航 Controller 快速停止导航,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34987009/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com