MPMediaQuery.artistsQuery() 以分组显示



我知道我很可能在这里错过了一些非常基本的东西,但我被卡住了。 为什么下面的代码生成每个曲目的艺术家的表视图,而不是分组列出的艺术家(即为什么每个艺术家列出 20 多次而不是全部分组在一起,以便每个艺术家只列出一次)? 我已经尝试了下面提到的集合和项目版本。 我做错了什么? 我该如何解决这个问题? 任何帮助,不胜感激。 提前感谢...

var tableData = MPMediaQuery.artistsQuery()
override func viewDidLoad() {
    super.viewDidLoad()
self.artistTableView.registerClass(UITableViewCell.self, forCellReuseIdentifier: "cell")
        }
func numberOfSectionsInTableView(tableView: UITableView) -> Int {
    return 1
}
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return self.tableData.collections!.count
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell     {
    let cell: UITableViewCell = self.artistTableView.dequeueReusableCellWithIdentifier("cell")! as UITableViewCell
    let artist: MPMediaItem = tableData.items![indexPath.row]
    //let artist: MPMediaItemCollection = tableData.collections![indexPath.row]
    if artist.valueForProperty(MPMediaItemPropertyArtist) == nil {
        cell.textLabel?.text = "Artist" as String
    } else {        
    let artistName = artist.valueForProperty(MPMediaItemPropertyArtist) as! NSString
    cell.textLabel?.text = artistName as String
    }
    return cell
}

我要回答我自己的问题...

问题出在这里:

let artist: MPMediaItemCollection = tableData.collections![indexPath.row]
if artist.valueForProperty(MPMediaItemPropertyArtist) == nil {

并在此处回答:如何从 MPMediaItemCollection 中提取艺术家值

感谢韦斯...

相关内容

  • 没有找到相关文章

最新更新