我正在使用我的应用程序委托在视图控制器之间进行转换。当委托决定不再需要视图控制器时,根据来自服务器的消息,它需要删除当前视图并用另一个视图替换它。目前我的代码如下所示:
- (void) showFight: (NSNotification*) notification
{
if(self.window.rootViewController != self.fightViewController)
{
NSDictionary* dict = [notification userInfo];
FightViewController *fightView = [[FightViewController alloc]
initWithNibName:@"FightViewController" bundle:nil];
fightView.userId = _userId;
self.fightViewController = fightView;
[fightView release];
[self.radarViewController.view removeFromSuperview]; // Doesn't work.
self.window.rootViewController = self.fightViewController;
[self.fightViewController showMonster:dict];
}
}
我知道我的视图控制器没有被删除,因为我可以在后台听到它的声音效果。
我想完全销毁视图控制器,因为我只想要一个视图控制器在内存中。我计划每次都从头开始创建视图控制器,如上面的代码所示。我这样做是否不当?