IOS AppDelegate.m 详解

今天在学习 IOS 中 Storyboard 的使用中,操作都是没问题的,就是启动后一直出现的是 白色 界面,不能进行跳转操作。找了好久也没找到方法,最后,问了老大,发现了问题所在,原来是 AppDelegate.m 文件中的, 该注释掉的没注释掉 :

 
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    //self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    //Override point for customization after application launch.
    //self.window.backgroundColor = [UIColor whiteColor];
    //[self.window makeKeyAndVisible];
    return YES;
}
 
因为之前一直对 IOS 中的  AppDelegate.m 不太了解,才会导致这个问题,所以这次一定要彻底的搞明白  AppDelegate.m  这个重要的文件,这将极大的帮助你了解 Xcode 中 IOS 的开发~
 
关于 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 文件,就是做一些全局变量的控制的。
 
本文禁止任何网站转载,严厉谴责那些蛀虫们。
本文首发于,博客园,请搜索:博客园 - 寻自己,查看原版文章
本文首发地址:IOS AppDelegate.m 详解 - www.cnblogs.com/xunziji/archive/2012/09/17/2689184.html
 
下面就过一下,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 按钮,返回主屏幕,或全屏之间切换应用程序等。
 
 
本文禁止任何网站转载,严厉谴责那些蛀虫们。
本文首发于,博客园,请搜索:博客园 - 寻自己,查看原版文章
本文首发地址:IOS AppDelegate.m 详解 - www.cnblogs.com/xunziji/archive/2012/09/17/2689184.html
 
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 详解 - www.cnblogs.com/xunziji/archive/2012/09/17/2689184.html
在应用程序要完全推出的时候,要执行的委托调用。
 
 
有没有发现,IOS 中的 AppDelegate.m/h 文件是很重要的呢,因为它是对 Application 的整个生命周期进行管理的,有木有~
 
本文禁止任何网站转载,严厉谴责那些蛀虫们。
本文首发于,博客园,请搜索:博客园 - 寻自己,查看原版文章
本文首发地址:IOS AppDelegate.m 详解 - www.cnblogs.com/xunziji/archive/2012/09/17/2689184.html
 
原文地址:https://www.cnblogs.com/xunziji/p/2689184.html