2012-01-30 9 views
0

初期化コードをどこに配置するか決定します。我々が通常選ぶことができる2つの場所があるようです:... LaunchingWithOptionsとviewDidLoad。アプリケーション:didFinishLaunchingWithOptionsとviewDidLoad

この2つの中からどれを選ぶのかを尋ねてください。

また、この目的のために検討すべき他の場所はありますか?

メモリ使用量 - メモリ不足の間にビューがメモリからスワップされている場合、viewDidLoadで初期化が行われることを心配する必要がありますか? (ユーザーがプロセス中に入力を失う可能性など)

+0

あなたが達成しようとしているものによって異なります。詳細はいくつかありますか?一般的には、それが属するクラスにコードを配置します。 – Mark

+0

私はこれが要件に応じて、完全なアプリケーションのための初期化は、launchingWithOptionsで行うことをお勧めしますによると思う。ビューのみの場合、ViewDidLoadで行います。 – vishy

答えて

4
didFinishLaunchingWithOptions 

はAppDelegateに属します。通常、アプリケーション自体として長い間生存するために必要なオブジェクトはここで作成され、初期化されます。 HereはAppDelegateのライフサイクルです。

viewDidLoad 

どのViewControllerに属し、のViewControllerの生活のために必要とされるオブジェクトが作成され、ここでは初期化されます。 HereはView Controllerのライフサイクルです。考慮すべき他の方法は

  • init
  • initWithNibName: bundle:

だから、それはオブジェクトの性質に依存しています。

+0

答えとリンクをありがとう、彼らは非常に便利です... – Stanley

関連する問題