1、AppDelegate.m 接口所在的文件,常见接口有:
/* 应用程序启动后,要执行的委托调用,系统启动代理(第一个页面的加载)*/ (UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions /* 应用程序将要由活动状态切换到非活动状态时执行的委托调用,如按下home 按钮,返回主屏幕,或全屏之间切换应用程序等。* / (void) applicationWillResignActive:(UIApplication*)application /* 在应用程序已进入后台程序时,要执行的委托调用。所以要设置后台继续运行,则在这个函数里面设置即可。*/ (void) applicationDidEnterBackground:(UIApplication*)application /* 在应用程序将要进入前台时(被激活),要执行的委托调用,与applicationWillResignActive方法相对应。 */ (void) applicationWillEnterForeground:(UIApplication*)application /* 在应用程序已被激活后,要执行的委托调用,刚好与 applicationDidEnterBackground 方法相对应。*/ (void) applicationDidBecomeActive:(UIApplication*)application /* 在应用程序要完全退出的时候,要执行的委托调用。*/ (void) applicationWillTerminate:(UIApplication*)application
2、【全局变量】 AppDelegate可以在整个应用程序中调用,可以使用代码段获取AppDelegate的全局变量:
AppDelegate *appDelegate=[[UIApplication sharedApplication]delegate];//因此可以在AppDelegate.h中定义需要全局使用的变量。
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];//显示窗口配置 LoginViewController *login = [[LoginViewController alloc] initWithNibName:@"LoginViewController" bundle:nil];//初始化应用系统需要显示的第一个页面(一般为ViewController) self.window.rootViewController = login;//配置window窗口的rootViewController实例 //判定系统版本,选择页面加载方式 if ( [[UIDevice currentDevice].systemVersion floatValue] < 6.0) { [self.window addSubview:login.view]; } else { [self.window setRootViewController:login]; } [self.window makeKeyAndVisible]; return YES;
***补充:应用创建之后可以在Supporting Files分组中看到main.m类文件,是整个应用最开始的入口。 执行的代码段为:
#import <UIKit/UIKit.h> #import "AppDelegate.h" int main(int argc, char * argv[]) { @autoreleasepool { return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); } }
原文:https://www.cnblogs.com/Im-Victor/p/13206439.html