創(chuàng)建應(yīng)用程序之后之后滔灶,默認(rèn)有AppDelegate.h文件與AppDelegate.m文件牧牢。 AppDelegate為整個應(yīng)用的一個代理纸兔,提供程序啟動疮蹦、退出等類似監(jiān)控的接口诸迟。
1、AppDelegate.m 接口所在的文件,常見接口有:
/* 應(yīng)用程序啟動后亮蒋,要執(zhí)行的委托調(diào)用扣典,系統(tǒng)啟動代理(第一個頁面的加載)*/
(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions
/* 應(yīng)用程序?qū)⒁苫顒訝顟B(tài)切換到非活動狀態(tài)時執(zhí)行的委托調(diào)用,如按下home 按鈕慎玖,返回主屏幕贮尖,或全屏之間切換應(yīng)用程序等。* /
(void) applicationWillResignActive:(UIApplication*)application
/* 在應(yīng)用程序已進(jìn)入后臺程序時趁怔,要執(zhí)行的委托調(diào)用湿硝。所以要設(shè)置后臺繼續(xù)運(yùn)行,則在這個函數(shù)里面設(shè)置即可润努。*/
(void) applicationDidEnterBackground:(UIApplication*)application
/* 在應(yīng)用程序?qū)⒁M(jìn)入前臺時(被激活)关斜,要執(zhí)行的委托調(diào)用,與applicationWillResignActive方法相對應(yīng)铺浇。 */
(void) applicationWillEnterForeground:(UIApplication*)application
/* 在應(yīng)用程序已被激活后痢畜,要執(zhí)行的委托調(diào)用,剛好與 applicationDidEnterBackground 方法相對應(yīng)鳍侣。*/
(void) applicationDidBecomeActive:(UIApplication*)application
/* 在應(yīng)用程序要完全退出的時候丁稀,要執(zhí)行的委托調(diào)用。*/
(void) applicationWillTerminate:(UIApplication*)application
2倚聚、【全局變量】 AppDelegate可以在整個應(yīng)用程序中調(diào)用线衫,可以使用代碼段獲取AppDelegate的全局變量:
AppDelegate *appDelegate=[[UIApplication sharedApplication]delegate];//因此可以在AppDelegate.h中定義需要全局使用的變量。
3惑折、系統(tǒng)啟動代理(第一個頁面的加載:application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions
一般在該代理接口中需要進(jìn)行應(yīng)用系統(tǒng)window(程序顯示窗口)配置授账,完成頁面彈出效果。(AppDelegate默認(rèn)擁有UIWindow *window實(shí)例變量), 可以使用以下代碼段完成:
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];//顯示窗口配置
LoginViewController *login = [[LoginViewController alloc] initWithNibName:@"LoginViewController" bundle:nil];//初始化應(yīng)用系統(tǒng)需要顯示的第一個頁面(一般為ViewController)
self.window.rootViewController = login;//配置window窗口的rootViewController實(shí)例
//判定系統(tǒng)版本惨驶,選擇頁面加載方式
if ( [[UIDevice currentDevice].systemVersion floatValue] < 6.0) {
[self.window addSubview:login.view];
} else {
[self.window setRootViewController:login];
}
[self.window makeKeyAndVisible];
return YES;
***補(bǔ)充:應(yīng)用創(chuàng)建之后可以在Supporting Files分組中看到main.m類文件白热,是整個應(yīng)用最開始的入口。 執(zhí)行的代碼段為:
#import <UIKit/UIKit.h>
#import "AppDelegate.h"
int main(int argc, char * argv[]) {
@autoreleasepool {
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}
}