IOS UIApplicationDelegate

UIApplicationDelegate 包含下面几个函数监控应用程序状态的改变:
    当一个应用程序首先运行时,调用函数 didFinishLaunchingWithOptions,但此时应用程序还处于inactive状态,所以接着会调用 applicationDidBecomeActive函数,此时就进入了应用程序的界面了。

    接着当按下home键时(此时主界面是应用程序主界面),会调用 applicationWillResignActive函数,接着调用 applicationDidEnterBackground函数,这时手机回到桌面。
    当再按下应用程序图标时,(假设此时应用程序的内存还没有被其他的应用程序挤掉),调用 applicationWillEnterForeground函数,接着调用 applicationDidBecomeActive函数,此时又会到应用程序主界面。

    在应用程序的主界面,我们双击home键,(出现多任务栏),调用 applicationWillResignActive函数,点击上面部分又会回到程序中,调用 applicationDidBecomeActive函数,如果点击多任务栏的其他应用程序,则会调用 applicationDidEnterBackground函数之后,进入其他应用程序的界面。

而对于 applicationWillTerminate函数,这里要说明一下:对于我们一般的应用程序,当按下home按钮之后,应用程序会处于一个suspended状态,如果现在去运行其他的程序,当内存不足,或者在多任务栏点击“减号”会完全退出应用程序,但是不管是哪一种,都不会去调用 applicationWillTerminate函数(针对IOS4以上),因此我们不能在此函数中保存数据。
applicationWillTerminate函数在什么时间调用呢?我查了下资料,还在网上找了找,原来这与当应用程序按下home按钮之后,应用程序的状态有关,当状态为suspended时,是永远不会调用此函数的,而当状态为“后台运行”(running in the background)时,当内存不足或者点击“减号”时,才会调用此函数!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值