gpt4 book ai didi

swift - 切换系统声音 - 快速

转载 作者:行者123 更新时间:2023-11-30 11:54:28 29 4
gpt4 key购买 nike

我想做到这样,可以单击一个按钮,这将开始重复一遍又一遍地播放系统声音(不重叠声音),直到再次单击该按钮 - 所以本质上,该按钮将打开/关闭音频服务系统声音的重复播放。

如果有人知道如何做到这一点,我将不胜感激。

谢谢

最佳答案

为此,请使用无限重复的 AVAudioplayer,然后在按下按钮时暂停/播放。首先在任何函数的外部创建一个audioPlayer变量:

var audioPlayer : AVAudioPlayer!

然后在viewDidLoad中初始化audioPlayer:

override func viewDidLoad() {
super.viewDidLoad()

guard let url = Bundle.main.path(forResource: "myOwnSound", ofType: "wav") else { //your own file name AND extension type of course
print("file not found")
return
}
do {
try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)
try AVAudioSession.sharedInstance().setActive(true)
try audioPlayer = AVAudioPlayer(contentsOf: URL(string: url)!)
audioPlayer!.prepareToPlay()
audioPlayer.numberOfLoops = -1
} catch let error as NSError {
print("error while initialising sound: \(error)")
}
}

然后在链接到按钮的函数内,在我的例子中,我将该函数命名为“buttonPressed”:

@IBAction func buttonPress(_ sender:AnyObject){
if audioPlayer.isPlaying {
audioPlayer.pause()
}
else {
audioPlayer.play()
}
}

关于swift - 切换系统声音 - 快速,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47979850/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com