1

以下は、私が抱えている問題を示すためのコードの一部です。

ビューコントローラーを割り当てて初期化します。init メソッドは標準の Objective C の init であるため、View Controller はまだ何も実行していません。次に、新しく作成したビュー コントローラーでルートを初期化する navigationController を作成します。次に、ナビゲーションにビューコントローラーがあり、必要ないため、ビューコントローラーを解放します。次の行で nav が解放され、View Controller の dealloc/viewDidUnload が呼び出されることが予想されます。代わりに、そうではありません。nav コントローラーに sportsViewController を配置しない場合、sportsViewController が解放された後に dealloc が呼び出されます。私は何を間違っていますか?(ところで、正しく機能する他の同様のコードがあります)

SportsViewController *sportsViewController = [[SportsViewController alloc]  init];
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:sportsViewController];
[sportsViewController release];
[nav release];
4

0 に答える 0