6

属性、つまりfetchedResultsControllerchatViewControllerサブクラスのインスタンスであるUITableViewControllerが常にin に設定されていると仮定してnilviewDidLoadが呼び出されると仮定するのは安全ですか? ふぅ!nilviewDidUnload

その場合、Xcode サンプル アプリケーション CoreDataBooks のように、アクセサー関数をすぐに再定義する必要はないと思います。viewDidLoad私が使用する唯一の場所であるため、別の関数ではなく、すべてのコードを入れたいと思います。

4

4 に答える 4

3

これらのセクションで呼び出される ViewDidLoad:-

1.セグエまたはストーリーボードIDでオブジェクトを作成した後、View Controllerをプッシュすると。

2.アプリケーションでインスタンスを作成する場合、複数のインスタンスを呼び出し、何度もプッシュします。たとえば、- coaursal (スクロール中に追加のコントローラーが必要) のように実装する場合複数回viewDidLoadを呼び出しました。

3. すべてのメモリ インスタンス (uiviewcontroller とそのサブクラスがインスタンス化された) が呼び出されたとき、つまり、ビューがアドレスを使用してメモリにロードする準備ができたときに呼び出されます。

4. 子クラスのコントローラー オブジェクトのみが作成されることに注意してください。通常の Secnarion では、親クラスのオブジェクトはインスタンス化されません。

于 2015-07-28T10:59:15.120 に答える
3

viewDidLoad は、ビューがロードされた後に呼び出されます。fetchedResultsController が nil であるかどうかは、viewController の初期化方法によって異なります。たとえば、 を作成するときに、呼び出される前に次のようにdetailViewController設定できます。fetchedViewControllerviewDidLoad

RecipeDetailViewController *detailViewController = [[RecipeDetailViewController alloc] initWithStyle:UITableViewStyleGrouped];
detailViewController.fetchedResultsController = fetchedResultsController;

[self.navigationController pushViewController:detailViewController animated:animated];
[detailViewController release];

そうは言っても、viewDidUnload で fetchedResultsController を nil にすると、確実に nil になります。

于 2010-10-16T20:22:15.237 に答える
2

viewDidLoad は複数回呼び出すことができると想定する必要があります。メモリ警告が送信された場合、View Controller はビューをメモリからアンロードし、次にビューが必要になったときに viewDidLoad が呼び出されます。

于 2010-10-16T18:03:34.390 に答える
0

viewDidLoadビューが初めてインスタンス化されたときにのみ呼び出されます。アプリケーションで毎回ビュー コントローラーを再作成しない場合は、1 回だけ呼び出されます (メモリ警告が表示され、ビューが nil アウトされた場合は再度呼び出されます)。

于 2016-07-13T19:44:38.800 に答える