0

我有一个专辑 ID(比如“-7833645336740617216”)。我正在寻找一种类似的方法,它可以将此作为输入,并返回与此专辑关联的 MPMediaItemArtwork。

4

1 回答 1

0

一种方法是使用 a 获取专辑,并使用谓词MPMediaPropertyPredicate执行 a 。MPMediaQuery然后MPMediaItemPropertyArtwork从专辑的代表项中获取属性的值:

- (MPMediaItemArtwork *)albumArtworkForAlbumID:(NSNumber *)albumID
{
    MPMediaPropertyPredicate *albumIDPredicate;
    albumIDPredicate = [MPMediaPropertyPredicate predicateWithValue:albumID
                                                        forProperty:MPMediaItemPropertyAlbumPersistentID];

    NSSet *predicateSet = [NSSet setWithObject:albumIDPredicate];
    MPMediaQuery *albumQuery;
    albumQuery = [[MPMediaQuery alloc] initWithFilterPredicates:predicateSet];

    MPMediaItemCollection *album;
    album = [albumQuery.collections firstObject];

    return [album.representativeItem valueForProperty:MPMediaItemPropertyArtwork];
}
于 2014-05-17T16:55:54.973 回答