Swift 如何播放序列MP3文件?

Swift 如何播放序列MP3文件?,swift,xcode,avqueueplayer,Swift,Xcode,Avqueueplayer,我正在尝试使用array、for和AVQueueplayer播放序列mp3文件。我看到了这个错误 for number in myIndex..<arr.count{ var queuePlayer: AVQueuePlayer = { let url1 = Bundle.main.url(forResource: String(myIndex+number), withExtension: "mp3")! let item1 = AVPl

我正在尝试使用array、for和AVQueueplayer播放序列mp3文件。我看到了这个错误

   for number in myIndex..<arr.count{
    var queuePlayer: AVQueuePlayer = {

        let url1 = Bundle.main.url(forResource: String(myIndex+number), withExtension: "mp3")!

        let item1 = AVPlayerItem(url: url1)

        let queue = AVQueuePlayer(items: [item1])

        return queue
        }()
}`
预期申报

    @IBAction func autoplay(_ sender: Any) {


var items : [AVPlayerItem] = []
for number in myIndex..<arr.count {
    let url = Bundle.main.url(forResource: String(number), withExtension: "mp3")!
items.append(AVPlayerItem(url: url))
}
let queue = AVQueuePlayer(items: items)
queue.play()
}
您需要一个AVQueuPlayer,请按如下方式尝试:

lazy var queue : AVQueuePlayer = {
    return AVQueuePlayer()
}()

var items : [AVPlayerItem] = []

for number in myIndex..<arr.count{
    let url = Bundle.main.url(forResource: String(myIndex+number), withExtension: "mp3")!
    items.append(AVPlayerItem(url: url))
}
queue = AVQueuePlayer(items: items)

然后您可以简单地使用queue.play或queue.advanceToNextItem等

谢谢您的帮助。不幸的是,当我点击按钮时,它不起作用。没有错误。我应该试试别的吗?@mjk你能分享更多你的代码吗?你是说哪个按钮?当然,我在我的问题上添加了更多的代码。它在Xcode控制台中工作,但在project中不工作。我在项目中有mp3文件。当我点击自动播放按钮时,任何事情都不会发生。也没有错误。您使用的是真实设备还是模拟器?最好将队列播放器作为惰性变量启动,以确保它在我编辑代码时初始化。我正在使用模拟器并添加了其他代码,但它也不起作用。也许,如果我得到一个设备并使用它,它可以工作吗?