2

我有些困惑在我的兩個視圖控制器和應用程序委託類目標C:當使用方法,應用代理,以及何時使用方法 - 視圖 - 控制器

方法下面的方法在應用程序委託:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 

方法的ViewController:

- (void)viewDidLoad 

下,我需要在應用程序的委託或視圖控制器方法添加的代碼是什麼情況呢?我相信,爲了切換視圖,我們需要將它包含在應用程序委託方法中,我們需要遵守哪些經驗規則?

謝謝!

回答

2

application:didFinishLaunchingWithOptions:應該用於啓動應用程序時必須執行的設置,例如,

  • 核心數據堆棧
  • 還原應用程序狀態
  • 創建應用程序導航控制器或標籤欄

viewDidLoad中應該用於僅需要針對該特定視圖做任何配置控制器。在某些情況下,視圖可能無法加載,因此在應用程序委託中進行配置沒有意義。

e.g

  • 打開一個HTTP連接時,視圖負載
  • 問計位置數據的圖
3

因爲它是所謂的發射,application:didFinishLaunchingWithOptions:通常包含邏輯初始化應用程序(例如,建立核心數據對象,登記爲推送通知等)。另一方面viewDidLoad的目的是在顯示之前初始化視圖控制器。

相關問題