iOS应用程序因"message send to deallocated instance"而崩溃



我的应用程序崩溃,代码如下:

else if(...)
    {
        CGDetailView *detailView = [[CGDetailView alloc] init];
        ContactGroup *contactGroup = [[ContactGroup alloc] init];
        [contactGroup setObjectStatus:NewObject];       
        [detailView setContactGroup:contactGroup];
        [detailView newContactGroup:YES];
        [contactGroup release];
        UIBarButtonItem *temporaryItem=[[UIBarButtonItem alloc] init];
        temporaryItem.title = NSLocalizedString(@"back", @"");
        self.navigationItem.backBarButtonItem = temporaryItem;
        [temporaryItem release];
        [[self navigationController] pushViewController:detailView animated:YES];
        [detailView release];
    }

错误为"消息发送到已解除分配的实例",并且它考虑类型为的对象CGDetailView。我使用alloc-init发布模式,我真的不明白为什么应用程序崩溃。它通常是有效的。

如果有帮助的话,iOS 7.1和设备是iPhone5。

只需尝试获取为该CGDetailView的对象释放内存的点,并且您仍在该对象上调用方法。你可以通过从编辑方案启用僵尸对象来做到这一点,它会告诉你你的应用程序崩溃的地方。

最新更新