iphone中的对象释放问题
Posted
技术标签:
【中文标题】iphone中的对象释放问题【英文标题】:Object release problem in iphone 【发布时间】:2010-11-10 07:59:15 【问题描述】:我正在使用导航控制器从一个视图移动到另一个视图... 我有 3 个视图
栈(导航控制器)中的排列如下
view1--------->view2------------>view3
在 view3 上,我正在加载一个 webview,它根据用户的当前位置显示信息...
问题是当我点击 view3 上的后退按钮时(加载期间),我的应用程序崩溃
我的主要问题是当我按下返回导航按钮时对象被释放..这会出错..
我知道可以通过关闭用户交互来修复它。
但是在慢速连接中加载可能需要很长时间(因为我的应用首先获取位置,然后将其发送到谷歌并获取位置名称,然后再次发送网络请求以显示一些数据)并且在这段长时间内用户可能会令人沮丧..
还有其他选择吗? 请帮助...我即将修复我的应用程序..只剩下这个问题...
【问题讨论】:
您能否提供崩溃的完整回溯,以及崩溃点周围的代码?这将有助于我们诊断问题。 @Ryan--错误是程序接收到的信号:“EXC_BAD_ACCESS”。 developer.apple.com/library/ios/navigation 【参考方案1】:尝试使用 NSZombieEnabled 选项,以发现您尝试向哪个已发布对象发送消息。
在 Xcode 项目的可执行文件组中双击一个可执行文件。 单击参数选项卡。 在“要在环境中设置的变量:”部分中,创建一个名为“NSZombieEnabled”的变量并将其值设置为“YES”。
【讨论】:
+1-在此之后是消息 2010-11-10 15:23:40.993 TotalLocksmith[8222:207] *** -[CarCenters respondsToSelector:]:消息发送到已释放的实例 0x7c59b20 这里汽车中心是我的课 不应释放的对象类型(或所需变量)是 CarCenters。 如果 CarCenters 是类型,通过方法调用堆栈找到 CarCenters 类型的变量。以上是关于iphone中的对象释放问题的主要内容,如果未能解决你的问题,请参考以下文章