gpt4 book ai didi

swift - 如何调试 Swift 的函数调用堆栈?

转载 作者:行者123 更新时间:2023-11-30 11:59:05 24 4
gpt4 key购买 nike

我遇到了屏幕被推两次的问题。问题是我不知道哪个pushViewController 正在这样做,而且我有很多pushViewController。因此,我想向 navigationController.pushViewController() 函数添加一个断点,以便我可以看到调用该函数的上一个调用堆栈是什么。我不需要看到pushViewController的内部。我只需要每当调用 navigationController 中的函数 PushViewController 时断点就停止。但我无法在 navigationController 代码的 open func PushViewController() 上放置断点。我怎样才能做到这一点?

最佳答案

您可以扩展UINavigationController并重写pushViewController函数。

class MyNavigationViewController : UINavigationController {
override func pushViewController(_ viewController: UIViewController, animated: Bool) {
super.pushViewController(viewController, animated: animated)
}
}

然后,如果您使用 Storyboard,请将导航 Controller 的类更改为 MyNavigationViewController ,如果您从代码创建导航 Controller ,则也在代码中更改。

关于swift - 如何调试 Swift 的函数调用堆栈?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47465584/

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