0

私は2つのuiviewcontrollerを持っていて、deallocですべてのリソースを解放し、didunloadでそれらをnilに設定していますが、それでも両方のviewcontrollerに出くわしたとき、メモリは増え続けます。

私はこの投稿から使用されたメモリと空きメモリを追跡しています

なぜこれが起こっているのか誰かが提案できますか?

これは2番目のビューコントローラです。

- (void)viewDidUnload {
    adView.delegate = nil;    
    [self setCountDown:nil];    
    [self setUploadPhoto:nil];   
    [self setBackclicked:nil];   
    [self setInfo:nil];   
    [self setCloseButton:nil];   
    [self setHow2usebg:nil];   
    [self setHow2useInstruction:nil];  
    [self setHow2useicon:nil];    
    [self setVc1:nil];   
    [self setVc:nil];   
    adView = nil;   
    [super viewDidUnload];
}

-(void)dealloc
{

    [adView release];
    [closeButton release];
    [how2usebg release];
    [how2useInstruction release];
    [how2useicon release];
    [videoRecorder1 release];
    [uploadPhoto release];
    [countDown release];
    [backclicked release];
    [info release];
    [vc release];
    [talkingImage release];
    [backgroundImage release];
    [super dealloc];
}
4

1 に答える 1

1

私はあなたが別のviewcontrollerにviewcontrollerを追加していると思います..以下の行のように..

[self.view addSubView:yoursecondview];

Self.viewの代わりに、Appdelegateオブジェクトを作成してからウィンドウを追加します

AppDelegate *object=[[UIApplication SharedApplication] delegate];
[self.view removeFromSuperview];
[object.window addSubView:yoursecondview];
于 2012-10-10T06:45:22.170 に答える