Получить название песни из MPMediaItemCollection
Я пытаюсь переписать мой старый плеер с Objective-C на Swift (по памяти) и попал в беду. У меня есть множество таких песен
let query = MPMediaQuery.songsQuery()
query.groupingType = MPMediaGrouping.Title
songsArray = query.collections
Затем в моем табличном представлении я пытаюсь получить имя каждого элемента мультимедиа для cell.textLabel
, Как это:
var mediaItem = songsArray.objectAtIndex(indexPath.row)
var title = mediaItem.valueForProperty(MPMediaItemPropertyTitle)
Но я не получаю MPMediaItems, я получаю коллекцию предметов. Итак, как я могу взять MPMediaItem из массива MPMediaItemCollections и получить заголовок?
1 ответ
Если вы хотите использовать группировку коллекции элементов мультимедиа и получить информацию о группе дорожек внутри них, вы можете получить доступ к представителю MPMediaItem содержимого коллекции через MPMediaItemCollection. representativeItem
имущество.
let collection = songsArray.objectAtIndex(indexPath.row) as! MPMediaItemCollection
let representativeItem = collection.representativeItem
let title = representativeItem.title
Примечание: если вы предпочитаете работать с массивом MPMediaItems, вы можете рассмотреть возможность использования MPMediaQuery items
собственность, а не ее collections
имущество.