Мой основной UIViewController (PMGameViewController.h) - это файл, вызовы которого мои приложения делегируют.
На моем основном UIViewController (PMGameViewController.m) есть несколько кнопок. Когда кнопка нажата, я делаю insertSuvbiew и прикрепляю сверху еще один UIViewController. Когда мини-игра закончена, я просто выполняю removeFromSubview. Это удаляет UIViewController, который я вставил сверху, и показывает мне главное меню. Идеально, это то, что я хочу, но ...
После того, как я выполняю removeFromSubview, объектный блок не сбрасывается. Как я могу освободить память UIViewController. Я не знаю, как сделать обратную ссылку на мой основной UIViewController (PMGameViewController.m), чтобы сообщить ему, что он был удален, и освободить память UIViewController.
Вот как я вставляю Subview
//////////////////////////////////////
//Buttons are in PMGameViewController.m file
//////////////////////////////////////
if((UIButton *) sender == gameClassicBtn) {
//////////////////////////////////////
//This Inserts the GameClassic.h file
//////////////////////////////////////
GameClassic *gameClassicController = [[GameClassic alloc]
initWithNibName:@"GameClassic" bundle:nil];
self.gameClassic = gameClassicController;
[gameClassicController release];
[self.view insertSubview:gameClassicController.view atIndex:1];
}
if((UIButton *) sender == gameArcadeBtn) {
//////////////////////////////////////
//This Inserts the GameArcade.h file
//////////////////////////////////////
GameArcade *gameArcadeController = [[GameArcade alloc]
initWithNibName:@"GameArcade" bundle:nil];
self.gameArcade = gameArcadeController;
[gameArcadeController release];
[self.view insertSubview:gameArcadeController.view atIndex:1];
}