我可以使用以下方式关闭音频播放器:
- (IBAction)sndOnOff:(id)sender {
if (_sndBtn.selected == NO) {
[_sndBtn setSelected:YES];
[audioPlayer stop];
}
else{
[_sndBtn setSelected:NO];
[audioPlayer play];
}
但是如何关闭我创建的系统声音?
NSURL *soundURL1 = [[NSBundle mainBundle] URLForResource:@"selectSound"
withExtension:@"wav"];
AudioServicesCreateSystemSoundID((__bridge CFURLRef)soundURL1, &sound2);
答案 0 :(得分:3)
有一个原因是我们无法对系统声音进行精细控制 - 因为它应该是短暂的(在iOS <30秒内)并且完整。想象一下,在任何操作系统中我们有多少次系统声音切断?
但你可以这样做:
AudioServicesDisposeSystemSoundID (sound2);
阻止它。但这意味着您需要使用以下方法再次创建声音:
AudioServicesCreateSystemSoundID((__bridge CFURLRef)soundURL1, &sound2);
再次播放:
AudioServicesPlaySystemSound(sound2);
您当然可以播放您的系统声音&#34;在AVPlayer
并停止它就像你唱一首歌,但这意味着它不应该是#34;首先是系统声音。希望这会有所帮助。
答案 1 :(得分:0)
这样做......
AudioServicesDisposeSystemSoundID (sound2);
我想不出任何负面后果。