プロジェクトには現在、すべてのアプリケーションのメイン ビューとして機能する「ダッシュボード」と呼ばれる UIviewController があります。このメイン ビューは、分割ビューのような 2 つのサブビューで構成されています。メインの左側 (左図) には複数のボタンがあります。右側(ライトビュー)には、左側の選択したボタンの内容が表示されます。
ボタンが押されると、次のように表示されるビューの新しいインスタンスが作成されます。
vcMySchedule_iPad *vcSchedule = [[vcMySchedule_iPad alloc] initWithNibName:@"vcMySchedule_iPad" bundle:nil];
ncDashboard = [[UINavigationController alloc] initWithRootViewController:vcSchedule];
ncDashboard.navigationBar.barStyle = UIBarStyleBlackOpaque;
ncDashboard.view.frame = self.vwRightPanel.bounds;
[self.vwRightPanel addSubview:ncDashboard.view];
別のボタンを押すと別のビューが表示されますが、以前に呼び出されたビューのメモリは残っており、以前のビューの割り当て解除は呼び出されません。
左側にはボタンがあり、押すと左側が左側に移動し、右側が左側に移動して完全に表示されるため、分割ビューを使用していません。
これに対するアプローチはありますか?
一部の画像を更新しました...
メイン (MainViewController):
プレスコースカタログ:
vcCourseCatalog_iPad *vcCourse = [[vcCourseCatalog_iPad alloc] initWithNibName:@"vcCourseCatalog_iPad" bundle:nil];
ncDashboard = [[UINavigationController alloc] initWithRootViewController:vcCourse];
ncDashboard.navigationBar.barStyle = UIBarStyleBlackOpaque;
ncDashboard.view.frame = self.vwRightPanel.bounds;
[self.vwRightPanel addSubview:ncDashboard.view];
テーブルから行を選択すると詳細が表示され、ユーザーがボタンを押すとビューが最大表示されます。
おそらく私は新しい見解を間違って呼んでいたのではないかと思います。オブジェクトはどこにリリースされますか?