2016-05-16 134 views
1

我的应用中有媒体播放功能,我允许用户从他们的设备中选择播放列表。尝试播放播放列表中的歌曲

播放列表选择工作正常,我将播放列表名称存储在数据库中。现在我不知道如何只播放选定播放列表中的歌曲。

我的代码是:

let myMediaQuery = MPMediaQuery.songsQuery() 
let predicateFilter = MPMediaPropertyPredicate(value: "Rock", forProperty: MPMediaItemPropertyGenre) 
myMediaQuery.filterPredicates = NSSet(object: predicateFilter) as? Set<MPMediaPredicate> 
self.myMusicPlayer.setQueueWithQuery(myMediaQuery) 

我以为只是更换过滤器谓词像MPMediaItemPropertyPlaylist的工作,但没有这样的过滤器类型。

如何通过使用播放列表名称应用过滤器播放播放列表?

谢谢

回答

1

找到答案,如果其他人正在寻找。

let myMediaQuery = MPMediaQuery.songsQuery() 
let predicateFilter = MPMediaPropertyPredicate(value: "\(playlist)", forProperty: MPMediaPlaylistPropertyName) 
myMediaQuery.filterPredicates = NSSet(object: predicateFilter) as? Set<MPMediaPredicate> 
myMusicPlayer.setQueueWithQuery(myMediaQuery) 
相关问题