【发布时间】:2011-12-25 14:32:40
【问题描述】:
我正在使用启用了 ARC 的 iOS 5。当点击视图时,我正在播放与特定视图关联的录音。当用户改变视图时,播放停止。我使用 NSNotification 调用 -stopPlayback 方法,该方法工作正常。问题是当用户返回原始视图并点击它时,它会从停止的地方继续录制。
禁用 ARC 后,我可以使用以下代码:
-stopPlayback
{
if([audioPlayer isPlaying])
{
[audioPlayer stop];
[audioPlayer release];
audioPlayer = nil;
}
}
由于 ARC 不允许 [audioPlayer release],我无法从头重置播放。我删除了 [audioPlayer release] 和 audioPlayer=nil;因为 ARC 会处理它,结果是录制在上次停止后停止的地方播放。我没有看到 Apple 提供的关于如何在播放发生时从头开始重新开始录制的任何好的示例或文档。最好的方法是什么?
【问题讨论】:
标签: objective-c ios5 release avaudioplayer automatic-ref-counting