因此,我制作了一个允许用户创建自己的播放列表的应用,并且使用的是iOS的MediaPlayer框架。在将我的X代码更新到最新版本之前,我没有遇到任何麻烦,但是,当我更新我的X代码时,出现了以下错误提示:
.... / playlistV2VC.swift:325:37:无法为类型为((items:MPMediaItem?)'的参数列表调用类型为'MPMediaItemCollection'的初始化程序
这是我的代码:
currentCollectionArray.addObject(User.currentSongAdded!)
var newCollection = MPMediaItemCollection(items: [currentCollectionArray] as? MPMediaItem)
User.currentSong已添加!是一个新的MPMediaItem。
给我任何建议与obj-c或swift无关
最佳答案
如果currentCollectionArray
是MPMediaItem的Swift数组,则只需说MPMediaItemCollection(items: currentCollectionArray)
。
如果不是,那么应该是。您无需在此处使用NSMutableArray。
如果它是NSMutableArray,则必须进行双重广播:MPMediaItemCollection(items: currentCollectionArray as NSArray as! [MPMediaItem])
。
但是,严重的是,除非必须使用,否则不要使用NSMutableArray。痛苦是不值得的。
关于ios - 如何从NSMutableArray创建MPMediaCollection?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32878152/