我完成了一个带有音频的小应用程序,单击" next“按钮将播放声音并带我到下一页,单击" back”将播放声音并将我带回前一页。但是如果我做下一次,返回两次,模拟器崩溃,我从日志中接收到下面的消息。任何人都可以帮忙,干杯。消息是:* Thread1:程序接收到信号:"EXC_BAD_ACCESS“*,而代码编译得很好,我可以翻页(总共41页)。
发布于 2011-09-11 21:51:59
此错误通常是由于试图调用已被解除分配的对象的方法而引起的。诊断此问题的一种方法是在仪器中使用僵尸模板。当您发送已释放对象的消息时,它将为您提供一个对话框(带有调用堆栈)。不管确切原因是什么,这肯定与您的内存管理有关。
发布于 2011-09-11 22:10:32
这是猜测。
您说如果单击next,它会崩溃,然后返回两次。我假设你把页面放在一个数组里,对吗?如果是这样的话,通过两次单击上一次,您将尝试加载索引为-1的页面。数组在索引-1处没有对象。
如果我是对的,你要做的就是:
// In the back button code:
if(currentPageIndex - 1 < 0) {
// Dont go back
} else {
// Go Back
}
https://stackoverflow.com/questions/7381483
复制相似问题