2012-12-27 33 views
3

我試圖從iOS庫中檢索iPod庫中的MPMediaQuery播放列表。 而我想在UITableView中展示。如何從iOS庫中的iPod庫中檢索播放列表?

這是我的代碼viewDidLoad

MPMediaQuery *myQuery = [[MPMediaQuery alloc] init]; 
[myQuery setGroupingType: MPMediaGroupingPlaylist]; 
arrayOfPlaylist = [myQuery collections]; 

並在UITableViewCell方法

static NSString *CellIdentifier = @"Cell"; 

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 
    if (cell == nil) 
    { 
     cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier]; 
    } 

    for(int i=0;i<self.arrayOfPlaylist.count;i++) 
    { 
     dic = [self.arrayOfPlaylist objectAtIndex:0]; 
     cell.textLabel.font = [UIFont systemFontOfSize:10]; 
     cell.textLabel.text = [NSString stringWithFormat:@"%@",[self.arrayOfPlaylist objectAtIndex:indexPath.row]]; 
    } 

    return cell; 

我寫上面的代碼後,我UITableView我只得到了以下信息:

<MPConcreteMediaPlaylist : 0x1e51afd0> 

我不知道那是什麼,以及如何將播放列表名稱轉換爲字符串。 當我使用NSLog方法進行測試時,我的播放列表計數是正確的。

但我只有UITableView上面的消息和沒有播放列表名稱。

我只是iOS的初學者。

請幫我展示播放列表UITableView

回答

3

我得到了我的答案我自己的問題。

這是它。

MPMediaQuery *query = [MPMediaQuery playlistsQuery]; 
NSArray *playlists = [query collections]; 

for(int i = 0; i < [playlists count]; i++) 
{ 
NSLog(@"Playlist : %@", [[playlists objectAtIndex:i] valueForProperty: MPMediaPlaylistPropertyName]); 
} 
9

播放列表可以探討這樣的:

MPMediaQuery *myQuery = [[MPMediaQuery alloc] init]; 

arrayOfPlaylist = [myQuery collections]; 

for (MPMediaPlaylist *playlist in arrayOfPlaylist) { 
    NSLog (@"Playlist :%@", [playlist valueForProperty: MPMediaPlaylistPropertyName]); 
    NSArray *songs = [playlist items]; 
    for (MPMediaItem *song in songs) { 
     NSString *strSongTitle = 
      [song valueForProperty: MPMediaItemPropertyTitle]; 
     NSLog (@"Title : %@", strSongTitle); 
    } 
} 
+0

這是從庫中顯示了很多完整的歌曲。我只想顯示播放列表名稱bro。我怎麼能? –

+0

編輯的答案:NSLog(@「Playlist:%@」,[playlist valueForProperty:MPMediaPlaylistPropertyName]); –

+0

只返回很多NULL值。 –

相關問題