使用dealloc方法释放

时间:2013-07-23 22:22:33

标签: objective-c object memory-management uiviewcontroller dealloc

我正在尝试了解内存管理以做一些更好的应用程序,但一度停止了:

我使用了一些UIButtons。所以我分配它们,与它们一起工作等等。但我需要在一瞬间释放它们。 所以我为dealloc在屏幕上一直有用的所有对象实现UIViewController方法,并且当它消失时需要释放。所以在UIViewController我实施:

-(void)dealloc
{
    NSLog(@"Dealloc call");
    [myButton release];
    .... //Some objects release
    [super dealloc];
}

但是我从来没有看到打印过Dealloc,所以我认为当dealloc消失时它不会通过UIViewController方法传递。

那么,它是如何运作的? /什么是假的?

谢谢!

编辑:更改viewController的方法:

-(void)myMethod
{
    if (!nextviewcontroller)
    {
        nextviewcontroller = [[NextViewController alloc]init];
    }
    UIView *nextView = nextviewcontroller.view;
    UIView *actualView = actualviewcontroller.view;
    [actualviewcontroller viewWillAppear:NO];
    [nextviewcontroller viewWillDisappear:NO];
    [actualView removeFromSuperview];
    [self.view addSubview:nextView];
    [actualviewcontroller viewDidAppear:NO];
    [nextviewcontroller viewDidDisappear:NO];
}

0 个答案:

没有答案