iOS开发 Appdelegate

发布于 2019-12-25 13:58:15

刚学学IOS里面的开发,之前看cocos2d-x的代码时候就遇到了这个appdelegate,一直以为这是ios程序的入口,网上搜了一下,还是自己理解错了,是app代理,也就是说在app遇到一些状况的时候应该做什么的一个定义与实现,就相当与android开发里面捕获事件就要用broadcast receiver的onreceiver来接受一样。

主要有下面几种事件代理类型:

协议中定义的这些需要实现的方法的作用:

1、- (void)applicationWillResignActive:(UIApplication *)application
说明:当应用程序将要入非活动状态执行,在此期间,应用程序不接收消息或事件,比如来电话了

2、- (void)applicationDidBecomeActive:(UIApplication *)application
说明:当应用程序入活动状态执行,这个刚好跟上面那个方法相反

3、- (void)applicationDidEnterBackground:(UIApplication *)application
说明:当程序被推送到后台的时候调用。所以要设置后台继续运行,则在这个函数里面设置即可

4、- (void)applicationWillEnterForeground:(UIApplication *)application
说明:当程序从后台将要重新回到前台时候调用,这个刚好跟上面的那个方法相反。

5、- (void)applicationWillTerminate:(UIApplication *)application
说明:当程序将要退出是被调用,通常是用来保存数据和一些退出前的清理工作。这个需要要设置UIApplicationExitsOnSuspend的键值。

6、- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application
说明:iPhone设备只有有限的内存,如果为应用程序分配了太多内存操作系统会终止应用程序的运行,在终止前会执行这个方法,通常可以在这里进行内存清理工作防止程序被终止

7、- (void)applicationSignificantTimeChange:(UIApplication*)application
说明:当系统时间发生改变时执行

8、- (void)applicationDidFinishLaunching:(UIApplication*)application
说明:当程序载入后执行

9、- (void)application:(UIApplication)application willChangeStatusBarFrame:(CGRect)newStatusBarFrame
说明:当StatusBar框将要变化时执行

10、- (void)application:(UIApplication*)application willChangeStatusBarOrientation:
(UIInterfaceOrientation)newStatusBarOrientation
duration:(NSTimeInterval)duration
说明:当StatusBar框方向将要变化时执行

11、- (BOOL)application:(UIApplication)application handleOpenURL:(NSURL)url
说明:当通过url执行

12、- (void)application:(UIApplication*)application didChangeStatusBarOrientation:(UIInterfaceOrientation)oldStatusBarOrientation
说明:当StatusBar框方向变化完成后执行

13、- (void)application:(UIApplication*)application didChangeSetStatusBarFrame:(CGRect)oldStatusBarFrame
说明:当StatusBar框变化完成后执行

0 条评论

发布
问题

官网
微信

官方微信