2

ほとんどの場合、管理対象オブジェクトのコンテキストはアプリケーションデリゲートで作成されます。ツリー内のすべてのナビゲーション/タブコントローラーがアクセスできるように、ビュー/コントローラー階層に渡す方法は何ですか。私は毎回この情報を携帯する必要があり、特定の子の方法のすべてのコントローラーがそれを必要としない場合があるため、親から子に毎回それを渡すことは最善ではないかもしれません。

4

2 に答える 2

7

推奨される設計は、依存性注入を行うことです。これは、 を作成するときに、プロパティ経由でUIViewController渡すことを意味しNSManagedObjectContextます。UIViewController単一または一連のインスタンスのみが必要な場合は、NSManagedObjectプロパティを介してそれらを渡すだけです。

この設計はより柔軟で、コードをより再利用できます。NSManagedObjectContextすべてをAppDelegate 内の 単一の「ハードコード」にリンクすることは脆弱であり、コードの柔軟性を低下させます。

これについては、The Mac Developer Networkで詳しく説明しています。(編集: Wayback Machine's Cache 経由でリンクが失われました)

于 2010-07-04T19:01:40.160 に答える
0

メイン Nib にメイン コンテキスト オブジェクトを作成することもできます。そして、コントローラをこのオブジェクトにリンクします。または、MOC を 1 つしか使用しない場合は、シングルトンを作成します。

于 2010-07-04T12:28:52.807 に答える