如何删除打印语句会破坏我的项目? (SWIFT / Xcode的)

时间:2017-08-08 14:05:57

标签: swift printing

如果我注释掉打印行,那么toVC中的所有内容都无法加载。 toVC的每个元素都是零。如果我离开打印声明,一切都按预期工作。为什么呢?

我使用的是UITabBarControllerDelegate的{​​{1}}方法,如果有帮助的话。

我以前从未有过这样的事情。一旦我删除该行,它会在我第一次触摸附加animationControllerForTransitionFrom的任何元素时中断。任何帮助将不胜感激。

IBOutlet

1 个答案:

答案 0 :(得分:0)

阿。 UIViewControllers中的视图通常由SDK生命周期的相关部分延迟加载。这就是为什么你在viewDidLoad中设置代码的原因,以及加载视图的时间。

因为当您在print语句中调用toVC.view时它会被延迟加载,导致它被加载。

我怀疑这一行toVC.sideMenuView.frame.origin.x = toVC.view.frame.width可能是一个问题。当你设置一个视图的某个属性然后被覆盖时。

要尝试调试此操作,请尝试单步执行该行。或者,您可以使用简单的print替换_ = toVC.view语句以强制加载视图。或者,在代码中的不同位置添加print(toVC.isViewLoaded)的一些调试语句,以查看视图是否实际被加载。