2015-06-03 57 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的&阿肯軌道只有單一的查詢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,我用你的代碼,但沒有得到任何結果,而不是我有這些藝術家在我的設備中的軌道。 –

相關問題