-4

大家好,我制作了一个应用程序,我在模拟器和 iphone 中运行,它工作正常,我对其进行了分析并消除了内存泄漏。

但是今天我在模拟器上运行了应用程序,当我要查看第二个视图时,它显示的视图很好,但是当我回到第二个视图时,它崩溃了,没有显示任何消息...

是坏的多余吗?我不这么认为...

4

3 回答 3

0

我认为您正在发布具有 MKMapView 委托的视图控制器,不要发布具有 MKMapView 委托的视图控制器。我认为您在修复内存泄漏时释放了该委托

于 2011-02-18T06:04:59.973 回答
0

好的,然后试试这个

不要在这里释放 appDelegate 对象。它是整个应用程序的共享副本。在超级释放之前释放所有对象。

- (void)dealloc {  
//[appDelegate release];//here crash 
[staticImageDictionary release];
 [siteData release]; 
[newdata release]; 
[connection release]; 
[webData release];
 [activity release]; 
[super dealloc];
} 
于 2011-02-18T06:10:57.613 回答
0

在Objective C中,通常会发生当您在已经“释放”的dealloc方法中realese对象时,它会显示不好的过量。要跟踪已发布的对象,请使用NSZombieEnabled您可以在控制台中看到更多说明。

于 2011-02-18T06:12:24.517 回答