我注意到在构建时运行viewDidLoad只会被调用一次。如果按主页按钮并重新进入应用程序,则viewDidLoad不会再次执行。
我注意到的另一件事是,当你重新进入一个应用程序时,它会从你离开的地方开始。
这与旧版SDK中的行为相同吗?这是否意味着当按下主页按钮时,应用程序并没有真正退出?
答案 0 :(得分:3)
iOS4.0的一个不同之处在于,如果按主页按钮,您的应用可能不一定会终止。默认设置是它们仍将加载到内存中。这是iOS4.0的新“多任务”功能。关闭它,每次都应该加载你的应用程序。
UIApplicationExitsOnSuspend
是你的plist启用/禁用后台运行的关键。
答案 1 :(得分:3)
当您按下主页按钮时,调试将终止,因此您无法在任何版本的SDK上的调试器控制台中看到NSLog中的任何内容。您可以通过在viewDidAppear:
中放置一个NSLog来尝试这个,即使应用程序仍然在iOS 4的后台运行,它也应该被调用,但不是
答案 2 :(得分:1)
随着新的iOS 4,多任务处理到达iPhone和iPod Touch ...... 为此,当您使用iPhone模拟器调试或开发应用程序时,如果按主页按钮,您的应用程序将进入后台或多任务处理。比Xcode相信您的应用程序仍在使用中。
要调用viewDidLoad方法,您必须按两次主页按钮完全退出应用,然后在多任务栏中按住您的应用并点按X.