前言

每個(gè)iOS程序都會(huì)有一個(gè)AppDelegate的類,這個(gè)類就是一個(gè)代理類,我們新建一個(gè)Project的時(shí)候,里面都會(huì)帶有這個(gè)類。現(xiàn)在就讓我們看看這個(gè)類。

開始介紹

對(duì)于AppDelegate,它的父類是UIResponder,然后實(shí)現(xiàn)了UIApplicationDelegate協(xié)議,這里的方法多是協(xié)議里面的方法,先看看默認(rèn)的都有哪些方法。

1 application:didFinishLaunchingWithOptions:

它帶參是這樣的:

-(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Override point for customization after application launch. return YES;
}
  1. 先看一下它的注釋:在應(yīng)用程序啟動(dòng)后,重寫自定義點(diǎn)。這個(gè)是最直接的解釋,一般在這里面,我做的操作如下:
    • 不用故事板,自定義rootview
    • 使用其他三方類庫(kù)的時(shí)候在里面做一些初始化操作什么的。
  2. 參數(shù)
    | 參數(shù)| 描述|
    |-------------|----------------------------------------|
    |application|你的app對(duì)象|
    |launchOptions|一個(gè)指示app啟動(dòng)原因的字典(如果有)。這個(gè)字典也可能是空的在用戶直接點(diǎn)擊圖標(biāo)啟動(dòng)的情況下。例如當(dāng)程序關(guān)閉,并且有推送消息過來(lái)的時(shí)候,通過點(diǎn)擊推送打開app這個(gè)字典就包含推送過來(lái)的消息內(nèi)容|

  3. 返回值
    如果app不能處理URL資源或者繼續(xù)用戶活動(dòng),就會(huì)返回NO,否則返回YES。如果app是通過遠(yuǎn)程推送啟動(dòng)的,那么這個(gè)返回值會(huì)被忽略。

  4. 討論
    使用這個(gè)方法(包括與其相關(guān)的application: willFinishLaunchingWithOptions: )用于完成app的初始化和一些微調(diào)。這個(gè)方法在狀態(tài)復(fù)位的時(shí)候調(diào)用,但是發(fā)生在app的window和其他UI展現(xiàn)之前。在某些情況下,當(dāng)這個(gè)方法返回值之后,系統(tǒng)會(huì)調(diào)用其他的代理方法。(當(dāng)用戶進(jìn)入前臺(tái)狀態(tài)或者后臺(tái)狀態(tài)的情況)。
    如果你沒有在application: willFinishLaunchingWithOptions: 中處理la

    網(wǎng)友評(píng)論