0

如果我不在[super dealloc]课堂上使用,我的 iPhone 应用程序会被批准吗?

在这里我调用下一个视图控制器。

-(void) thumbClicked:(id) sender {

//NSArray *temp = self.mediaRecords ;
UIButton *button = (UIButton *) sender;
if([self.mediaRecords count] > 0) {
    DetailViewViewController *detailView = [[DetailViewViewController alloc] initWithNibName:@"DetailViewViewController" bundle:nil];
    detailView.mediaArray = self.mediaRecords;
    detailView.mediaThumbs = mediaThumbs;
    detailView.currentThumbTag =  button.tag;
    detailView.tabType = currentTabType;
    detailView.hidesBottomBarWhenPushed = YES;

    detailView.navCon = navController;
    detailView.cell = self;

    detailView.currentCellFrame = self.frame; 
    [navController pushViewController:detailView animated:YES];
} else {
    [CarboUtil alertWithMessage:NO_DATA_MESSAGE];
}


[detailView release];

}

这是dealloc

- (void)dealloc {
    //
    LogInfo (@"Media Detail View Dealloc -- START");

    [navBar release];
    [shareView release];
    [toolBar release];
    //[category release];
    //[mediaThumbs release];
    //[mediaArray release];
    [storyWebView release];
    [buttonBorderArray release];

    [fontSizeButton release];
    [facebookButton release];
    [tweeterButton release];
    [emailButton release];
    [commentsButton release];
    [textonlyButton release];
    [saveButton release];
    [fbAgent release];
    [queue release];
    [mediaListData release];

    [super dealloc];
    LogInfo (@"Media Detail View Dealloc -- END");
}

但在这种情况下,dealloc 从不调用,我必须手动释放视图,如果我手动执行,我会崩溃super dealloc

4

1 回答 1

4

很有可能,但这将是一件极其愚蠢的事情。您的应用程序可能会像筛子一样泄漏,这意味着您可能会收到大量内存警告,这意味着您的应用程序可能会非常崩溃。

换句话说,学习内存管理规则。它们没有那么复杂。

于 2011-03-29T05:07:43.300 回答