ViewdidLoad在点击按钮移动到下一个屏幕时再次被调用



我知道viewDidLoad在加载新屏幕时被调用。假设我有两个屏幕:屏幕1(主屏幕)和屏幕2。当应用程序启动时viewDidLoad(屏幕1)被调用。没错。我面临的问题是,当我按下按钮移动到屏幕2时,再次调用屏幕1的viewdidload。之后viewDidLoad的屏幕2被调用。

为什么viewDidLoad的屏幕1再次调用按下按钮?

p。我知道没有内存问题,因为我已经在开发应用程序了。这个问题在以前的应用程序中不存在,因为我现在运行它们,但我创建的每个新应用程序都有这个问题。此外,我正在使用storyboard和Xcode 5。我已经尝试了推和模态移动到下一个屏幕

我刚刚发现了一个愚蠢的错误。

实际上在创建第二个视图控制器的过程中,它以某种方式(意外)成为了第一个视图控制器的子控制器,而不是UIViewController。这就是为什么当我点击按钮移动到下一个视图。它转到第二个视图控制器的viewDidLoad,方法[super viewDidLoad]被调用,再次调用第一个屏幕上的viewDidLoad方法。

这是一个非常愚蠢的错误。但我只是分享它,这样它可能会帮助别人。

最新更新