0

Je fabrique donc une application qui permet aux utilisateurs de créer leur propre liste de lecture, et j'utilise le framework MediaPlayer d'iOS. Je n'ai pas du mal avant de mettre à jour mon code X à la dernière version, mais je suis arrivé avertissement d'erreur ci-dessous lorsque je mis à jour mon X Code:Comment créer MPMediaCollection à partir de NSMutableArray?

..../playlistV2VC.swift: 325: 37: Ne peut pas invoquer initialiseur pour type 'MPMediaItemCollection' avec une liste d'arguments de type '(articles: MPMediaItem)'

et voici mon code:

currentCollectionArray.addObject(User.currentSongAdded!) 
var newCollection = MPMediaItemCollection(items: [currentCollectionArray] as? MPMediaItem) 

User.currentSongAdded! est un nouveau MPMediaItem.

Donne-moi une suggestion ne marche pas question obj-c ou rapide

+0

Ceci est vraiment facile mais vous devez expliquer ce qu'est 'currentCollectionArray'. – matt

Répondre

1

Si currentCollectionArray est un tableau de Swift MPMediaItem, puis juste dire MPMediaItemCollection(items: currentCollectionArray).

Si ce n'est pas le cas, alors il devrait l'être. Vous n'avez pas besoin de travailler avec NSMutableArray ici.

S'il s'agit d'un NSMutableArray, vous devrez effectuer un double-cast: MPMediaItemCollection(items: currentCollectionArray as NSArray as! [MPMediaItem]). Mais sérieusement, n'utilisez pas NSMutableArray à moins d'y être obligé. Cela ne vaut pas la peine.

+0

J'ai essayé d'utiliser array et append, le résultat sera-t-il le même? –

+0

De quel "résultat" parlez-vous? – matt

+0

la MPMediaColelction –