我正在制作一个音板应用程序,我正在使用持续时间超过 30 秒的声音。我通过在 IB 中将我的动作与“触地”事件连接来播放声音,但是一旦开始声音就会继续播放。我在某个按钮中连接了一个“触摸取消”和“触摸外部”事件,该事件应该停止声音,但由于某种原因它没有。任何人都可以为我的问题提供解决方案吗?
---编辑---这是我的代码:
-(IBAction)playSound:(id)sender {
NSString *soundFile;
soundFile = [[NSBundle mainBundle] pathForResource:@"testSound" ofType:@"mp3"];
audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:soundFile] error:nil];
audioPlayer.volume = volumeSlider.value;
audioPlayer.numberOfLoops = -1;
[audioPlayer prepareToPlay];
[audioPlayer play];
}
-(IBAction)stopSound:(id)sender {
[audioPlayer stop];
}