2

ViewControllerクラスとAppデリゲートクラスの両方で次のメソッドについて少し混乱しています

アプリデリゲートのメソッド:

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

ViewControllerのメソッド:

- (void)viewDidLoad 

どのような状況で、アプリデリゲートまたはViewControllerメソッドにコードを追加する必要がありますか?ビューを切り替えるには、アプリデリゲートメソッドに含める必要があると思いますが、従う必要のある経験則はありますか?

ありがとう!

ジェン

4

2 に答える 2

3

起動時に呼び出されるため、application:didFinishLaunchingWithOptions:通常、アプリケーションを初期化するためのロジックが含まれています(たとえば、コアデータオブジェクトの設定、プッシュ通知の登録など)。一方、の目的はviewDidLoad、表示される前にViewControllerを初期化することです。

于 2011-04-07T04:39:30.577 に答える
2

application:didFinishLaunchingWithOptions:アプリケーションの起動時に発生する必要のあるセットアップに使用する必要があります。

  • コアデータスタック
  • アプリケーションの状態を復元しています
  • アプリケーションナビゲーションコントローラーまたはタブバーの作成

viewDidLoadは、その特定のViewControllerに対してのみ実行する必要がある構成に使用する必要があります。場合によっては、ビューが読み込まれないことがあるため、アプリデリゲートでその構成を行っても意味がありません。

例えば

  • ビューが読み込まれたときにHTTP接続を開く
  • ビューの位置データを要求する
于 2011-04-07T04:49:37.570 に答える