当我的应用程序在iPhone模拟器中运行时,委托方法
- (void)applicationWillTerminate:(UIApplication *)application
仅在我第一次点击iPhone模拟器的主页按钮时调用。
按下主页按钮并再次启动应用程序后,点击主页按钮不会调用委托方法。
这里发生了什么?我误解了一些基本的东西吗?
答案 0 :(得分:24)
我怀疑它正在被调用,但是你感到困惑,因为在你点击模拟器中的Home按钮后,你已经结束了Xcode中的当前会话。您的NSLog
方法可能有applicationWillTerminate:
,是吗?点击“主页”按钮后,NSLog
不再显示在Xcode的运行控制台中。如果您打开/Applications/Console.app
我希望它们会显示在那里。
答案 1 :(得分:4)
- (void)applicationWillTerminate:(UIApplication *)application
当应用程序“终止”时调用。 如果您使用的是iOS,那么当按下主页按钮时,应用程序将不会终止,除非您已为应用程序禁用了多任务处理,或者用户没有“支持多任务”设备。
- (void)applicationDidEnterBackground {
现在,当用户按下主页按钮时,被使用。除非(正如我之前所说)您已禁用应用程序的多任务处理,或者用户没有“支持多任务”设备。