2015-06-03 3 views
1

Я хочу получить несколько треков исполнителя из библиотеки iPod. Следующий код позволяет мне получить конкретные Треки как -Есть ли способ поиска нескольких треков исполнителя из библиотеки iPod за раз.

MPMediaQuery *query = [[MPMediaQuery alloc] init]; 
    [query addFilterPredicate: [MPMediaPropertyPredicate 
           predicateWithValue:@"Lady Gaga" 
           forProperty: MPMediaItemPropertyArtist]]; 
[query setGroupingType: MPMediaGroupingAlbum]; 

    NSArray *albums = [query collections]; 

возможно получить несколько художников треков как Lady Gaga & Akon дорожки только одного запрос predicateWithValue sepearted пути; OR/
ПРИМЕР-

[query addFilterPredicate: [MPMediaPropertyPredicate 
            predicateWithValue:@"Lady Gaga/ Akon" 
            forProperty: MPMediaItemPropertyArtist]]; 

Пожалуйста, помогите мне, как удовлетворить мои требования.

ответ

0

Вы можете использовать совокупный оператор IN (например @"attribute IN %@", aCollection) и фильтровать весь collections массив с NSPredicate:

NSArray *artists = @["Lady Gaga", @"Justin Bieber", @"Selena Gomez"]; 
MPMediaQuery *query = [[MPMediaQuery alloc] init]; 
[query setGroupingType: MPMediaGroupingAlbum]; 
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"%@ IN %@", MPMediaItemPropertyArtist, artists]; 
NSArray *albums = [[query collections] filteredArrayUsingPredicate:predicate]; 
+0

Привет skyddict, я использовал свой код, но не получили никакого результата, а не я есть треки этих художников на моем устройстве. –