我有两种与问题有关的方法,touchesBegan和touchesEnded。我想对它进行编码,以便当您触摸它(touchesBegan)时,声音开始(或播放),然后当您放开屏幕(touchesEnded)时,声音无效。
我已经导入了AudioToolbox并将其声明为systemsoundID和其他所有内容,但是我不确定如何使touchesEnded使其无效,然后在再次触摸屏幕时重新启动它。
现在,刚开始我接触它时只播放一次。当我将其放到touchedEnded中时,它会在每次放开时播放(与我想要的相反,但它不会像我想要的那样使它无效),我只是希望它仅在我触摸时播放音频并在我放开时结束声音。
我在touchesEnded / Began中为.m使用的代码是
AudioServicesPlaySystemSound(PlaySound1);
最佳答案
您可以使用
AudioServicesDisposeSystemSoundID(PlaySound1);
取消当前正在播放的声音,但实际上不建议这样做。我建议使用AVPlayer,它具有循环播放声音以及启动和停止声音的功能。您可以检查出here
关于ios - 如何使声音无效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24686999/