I've been trying to find a way to sort my resulting MPMediaQuery so that the results are sorted by date. I've had a lot of difficulty, and then I found the "reversed()" method, but I cannot get the returned data into a format that I can use with the MPMediaPlayer.
My original query:
var qryPodcasts = MPMediaQuery()
var titleFilter = MPMediaPropertyPredicate()
titleFilter = MPMediaPropertyPredicate(value: "This American Life", forProperty: MPMediaItemPropertyPodcastTitle, comparisonType: .equalTo)
qryPodcasts.addFilterPredicate(titleFilter)
So I tried this:
let myItems = qryPodcasts.items?.reversed()
podCollection = MPMediaItemCollection(items: myItems!) //ERROR HERE
myMP.setQueue(with: podCollection!)
Which gave me this error:
"Cannot convert value of type 'ReversedRandomAccessCollection<[MPMediaItem]>' (aka 'ReversedRandomAccessCollection<Array<MPMediaItem>>') to expected argument type '[MPMediaItem]'"
How can I use the results of 'reversed()' in the MediaPlayer?