偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

iPhone開發(fā)進階(2)iPhone應(yīng)用程序的啟動過程

移動開發(fā) iOS
iPhone應(yīng)用程序的啟動過程是本文要介紹的內(nèi)容,它是怎樣啟動應(yīng)用程序,初始化的呢,這些都是通過 UIApplicationMain 來實現(xiàn)的。

iPhone應(yīng)用程序啟動過程是本文要介紹的內(nèi)容,上一回我們看到了iPhone的入口函數(shù)main,這之后它有是怎樣啟動應(yīng)用程序,初始化的呢,這些都是通過 UIApplicationMain 來實現(xiàn)的,我們來看啟動過程。

其啟動的流程圖大致如下圖所示:

iPhone應(yīng)用程序的啟動過程

  1. int retVal = UIApplicationMain(argc, argv, nil, nil); 

通過上面的語句,創(chuàng)建UIApplication實例。同時,查看應(yīng)用程序的 Info.plist 文件(該文件記錄了一些應(yīng)用程序的基礎(chǔ)信息,比如程序名稱,版本,圖標等)。該文件還包含應(yīng)用程序資源文件的名稱(nib文件,名稱用NSMainNibFile鍵指定)。如下所示:

  1. <key>NSMainNibFile</key> 
  2.    <string>MainWindow</string> 

上面的意思是指,在應(yīng)用程序啟動的時候,需要從nib文件中加載名為 MainWindow 的資源。

其實,nib文件也是參照項目中Resources組中MainWindow.xib文件,我們雙擊該文件,啟動Interface Builder后可以看到下面的圖示:

iPhone應(yīng)用程序的啟動過程

Interface Builder 中有以下4個項目:

File’s Owner 對象,實際上就是 UIApplication 的實例。

First Responder 對象。每個程序都會有一個***響應(yīng)者,比如鼠標事件,鍵盤事件等,它就是對應(yīng)的那個對象。比如多文檔程序中,menu的響應(yīng)事件一般都是連接到FirstResponder中去的,因為主界面一般都在別的nib里面,此時的FirstResponder就是你的那個主nib的FileOwner。

Delegate 對象。

Window。應(yīng)用程序啟動的時候所顯示的窗口。

應(yīng)用程序啟動之后,像下面圖一樣,你可以定制自己的行為,如圖:

iPhone應(yīng)用程序的啟動過程

程序啟動之后,會發(fā)送消息給 UIApplicationDelegate 的 applicationDidFinishLaunching 方法,在這里我們完成自己的初始化過程。如下面的代碼。

 

  1. - (void)applicationDidFinishLaunching:(UIApplication *)application {  
  2.  
  3.     // Override point for customization after app launch  
  4.     [window addSubview:viewController.view];  
  5.     [window makeKeyAndVisible];  
  6. }  
  7.  
  8. - (void)dealloc {  
  9.     [viewController release];  
  10.     [window release];  
  11.     [super dealloc];  
  1. [window addSubview:viewController.view] 表示 XXXXXXViewController.xib 、[window makeKeyAndVisible]  

是顯示該窗口。

總結(jié)以上的內(nèi)容,iPhone應(yīng)用程序的引導過程如下所示:

  1. main.m → MainWindow.xib → XXXXXXDelegate.m → XXXXXXViewController.m → XXXXXXViewController.xib  

或者看下面的圖來理解。

iPhone應(yīng)用程序的啟動過程

小結(jié):iPhone應(yīng)用程序啟動過程的內(nèi)容介紹完了,希望通過本文的學習能對你有所幫助!如果想繼續(xù)深入了解的話,請參考以下幾篇文章:

iPhone開發(fā)進階(1)iPhone應(yīng)用程序項目構(gòu)成案例實現(xiàn)

iPhone開發(fā)進階(3)定制UIViewController案例實現(xiàn)

iPhone開發(fā)進階(4)編程定制UIButton案例實現(xiàn)

責任編輯:zhaolei 來源: 博客園
相關(guān)推薦

2011-08-17 16:12:20

iPhone應(yīng)用程序

2011-07-21 10:47:37

iPhone Cocoa 委托

2011-08-10 09:31:33

開發(fā)iPhone應(yīng)用程

2011-08-12 14:54:45

iPhone委托

2011-08-05 13:49:53

iPhone 應(yīng)用 開發(fā)

2011-07-26 09:41:23

iPhone xcode Mac OS X

2010-08-27 10:41:41

iPhone核心應(yīng)用程序

2011-08-17 16:23:31

iPhone開發(fā)UIViewContr

2011-07-26 11:13:15

iPhone PXL

2011-08-17 16:29:12

iPhone開發(fā)UIButton

2011-04-29 10:46:32

iPhone開發(fā)入門iPhoneiOS

2012-05-24 15:49:35

HTML5

2011-07-21 15:56:32

iPhone 截屏

2011-07-27 17:30:40

iPhone Locate 定位

2011-07-19 14:36:32

iPhone

2011-07-20 15:58:58

iPhone 應(yīng)用程序 生命周期

2014-06-19 14:30:28

Android應(yīng)用程序進程啟動

2014-06-19 14:54:11

Android應(yīng)用程序進程啟動

2014-06-19 14:59:40

Android應(yīng)用程序進程啟動

2014-06-20 11:20:37

Android應(yīng)用程序進程啟動
點贊
收藏

51CTO技術(shù)棧公眾號