您的位置:首页 > 移动开发

IOS AppDelegate.m 详解

2014-01-16 22:13 344 查看
关于 AppDelegate,有一个国外的用户,总结的特别好:

 

AppDelegate.h/m define a class that manages the application overall. The app will create one instance of that class and send that object messages that let the delegate influence the app's behavior at well-defined times. For example, -application:didFinishLaunchingWithOptions:
is sent when the app has finished launching and is ready to do something interesting. Take a look at the UIApplicationDelegate
reference page for a list of messages that the app delegate can implement to modify the behavior of the application.

 

看到了吧,如果通过上面的解释,可以看出来,AppDelegate.h/m 是一个很重要的文件,如果你做过 Asp.Net 开发,那么这个文件就类似于 .Net 中的 Global.ascx 文件,就是做一些全局变量的控制的。

 

 

下面就过一下,AppDelegate.h/m 中默认的方法:

 

 

1. application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

 

Tells the delegate when the application has launched and may have additional launch options to handle.

 

在应用程序启动后,要执行的委托调用。

 

 

 

2. applicationWillResignActive:(UIApplication *)application

 

Tells the delegate that the application is about to become inactive.This method is called to let your application know that it is about to move from the active to inactive state.After calling this method, the application also posts a UIApplicationWillResignActiveNotification
notification to give interested objects a chance to respond to the transition.

 

在应用程序将要由活动状态切换到非活动状态时候,要执行的委托调用,如 按下 home 按钮,返回主屏幕,或全屏之间切换应用程序等。

 

 

 

3. applicationDidEnterBackground:(UIApplication *)application

 

Tells the delegate that the application is now in the background.Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated
later. If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.

 

在应用程序已进入后台程序时,要执行的委托调用。

 

 

 

4. applicationWillEnterForeground:(UIApplication *)application

 

Tells the delegate that the application is about to enter the foreground.Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background.

 

在应用程序将要进入前台时(被激活),要执行的委托调用,刚好与 applicationWillResignActive 方法相对应。

 

 

 

5. applicationDidBecomeActive:(UIApplication *)application

 

Tells the delegate that the application has become active.Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.

 
在应用程序已被激活后,要执行的委托调用,刚好与  applicationDidEnterBackground 方法相对应。
 
 
6. applicationWillTerminate:(UIApplication *)application
 
Tells the delegate when the application is about to terminate.Called when the application is about to terminate. Save data if appropriate.
 

在应用程序要完全推出的时候,要执行的委托调用。

 

 

有没有发现,IOS 中的 AppDelegate.m/h 文件是很重要的呢,因为它是对 Application 的整个生命周期进行管理的,有木有~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息