iPhone - dealloc子视图UIViewController当removeFromSuperview时

时间:2009-09-21 16:57:30

标签: iphone memory memory-management uiviewcontroller dealloc

我的主UIViewController(主菜单)上有几个按钮,可以在主菜单的顶部创建并添加子视图UIViewController。当我删除子视图时,该控制器的内存不会被释放。如何立即释放该子视图内存?

有没有人有例子?这将解决我所有的问题!提前谢谢。

以下是我添加子视图的方法

if((UIButton *) sender == gameClassicBtn) {
        GameClassic *gameClassicController = [[GameClassic alloc] 
                             initWithNibName:@"GameClassic" bundle:nil]; 
        self.gameClassic = gameClassicController;
        [gameClassicController release]; 
        [self.view insertSubview:gameClassicController.view atIndex:1];
    }

1 个答案:

答案 0 :(得分:0)

根据您提供的代码,可能至少有两个地方保留UIViewController - 一个是视图heirarchy(self.view),另一个是成员变量(self.gameClassic)。听起来你只是发布了视图层次参考而不是成员变量。如果释放后者,它是否会取消分配UIViewController?