gpt4 book ai didi

ios - 如何继续播放随机歌曲?

转载 作者:行者123 更新时间:2023-11-30 14:16:07 24 4
gpt4 key购买 nike

假设我有一个歌曲列表。我本质上希望我的应用程序从列表中随机选择一首歌曲,播放它,完成后,选择另一首随机歌曲,播放它,依此类推,直到永远。

这是我目前正在尝试的:

我做了一个AVAudioPlayer的代表。我使用 audioPlayerDidFinishPlaying 函数来跟踪歌曲何时完成。当调用此函数时,我理想情况下会选择一首新歌曲来播放。但是,这样做的问题是无法为 AVAudioPlayer 分配新歌曲。

我还尝试研究 AVQueuePlayer,它可以分配一首新歌曲,但是,它没有audioPlayerDidFinishPlaying 函数。

有人能给我指出正确的方向吗?

最佳答案

a.您可以通过以下方式准备播放列表:

var Player1 = AVAudioPlayer(contentsOfURL: NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("1", ofType: "mp3")!), error: nil)

var sound1 = NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("1", ofType: "mp3")!)
var sound2 = NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("2", ofType: "mp3")!)
var sound3 = NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("3", ofType: "mp3")!)
var sound4 = NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("4", ofType: "mp3")!)

Player1.prepareToPlay()
Player1.play()

a.当您的事件“audioPlayerDidFinishPlaying”被触发时:

Player1 = AVAudioPlayer(contentsOfURL: sound2, error: nil)
Player1.prepareToPlay()
Player1.play()

b.或者您可以在进行更改之前准备轨道:

var sound2 = AVAudioPlayer(contentsOfURL: NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("2", ofType: "mp3")!), error: nil).prepareToPlay()

b.当您的事件“audioPlayerDidFinishPlaying”被触发时:

Player1 = sound2
Player1.play()

关于ios - 如何继续播放随机歌曲?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31148863/

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