如何从 NSMutableArray 创建 MPMediaCollection?
How to create MPMediaCollection from NSMutableArray?
所以我制作了一个允许用户创建自己的播放列表的应用程序,并且我使用的是 iOS 的 MediaPlayer 框架。在将我的 X 代码更新到最新版本之前我没有遇到任何问题,但是当我更新我的 X 代码时我收到以下错误警告:
..../playlistV2VC.swift:325:37: Cannot invoke initializer for type 'MPMediaItemCollection' with an argument list of type '(items: MPMediaItem?)'
这是我的代码:
currentCollectionArray.addObject(User.currentSongAdded!)
var newCollection = MPMediaItemCollection(items: [currentCollectionArray] as? MPMediaItem)
User.currentSongAdded!是一个新的 MPMediaItem。
给我任何建议,无论是 obj-c 还是 swift
如果 currentCollectionArray
是一个 Swift MPMediaItem 数组,那么只需说 MPMediaItemCollection(items: currentCollectionArray)
。
如果不是,那应该是。您无需在此处使用 NSMutableArray。
如果它是一个 NSMutableArray 那么你将不得不进行双重转换:MPMediaItemCollection(items: currentCollectionArray as NSArray as! [MPMediaItem])
.
但说真的,除非万不得已,否则不要使用 NSMutableArray。不值得这样痛苦。
所以我制作了一个允许用户创建自己的播放列表的应用程序,并且我使用的是 iOS 的 MediaPlayer 框架。在将我的 X 代码更新到最新版本之前我没有遇到任何问题,但是当我更新我的 X 代码时我收到以下错误警告:
..../playlistV2VC.swift:325:37: Cannot invoke initializer for type 'MPMediaItemCollection' with an argument list of type '(items: MPMediaItem?)'
这是我的代码:
currentCollectionArray.addObject(User.currentSongAdded!)
var newCollection = MPMediaItemCollection(items: [currentCollectionArray] as? MPMediaItem)
User.currentSongAdded!是一个新的 MPMediaItem。
给我任何建议,无论是 obj-c 还是 swift
如果 currentCollectionArray
是一个 Swift MPMediaItem 数组,那么只需说 MPMediaItemCollection(items: currentCollectionArray)
。
如果不是,那应该是。您无需在此处使用 NSMutableArray。
如果它是一个 NSMutableArray 那么你将不得不进行双重转换:MPMediaItemCollection(items: currentCollectionArray as NSArray as! [MPMediaItem])
.
但说真的,除非万不得已,否则不要使用 NSMutableArray。不值得这样痛苦。