如何在iOS中从iPod库检索播放列表?

3

我正在尝试使用iOS中的MPMediaQuery从iPod Library检索播放列表。并且我想在UITableView中显示。

这是我在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中显示播放列表。

2个回答

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);
    }
}

那显示了许多来自库的整首歌曲。我只想显示播放列表名称,兄弟。我该怎么做? - Fire Fist
答案已编辑:NSLog(@“播放列表:%@”,[playlist valueForProperty:MPMediaPlaylistPropertyName]); - Paresh Navadiya
只返回许多NULL值。 - Fire Fist

3
我得到了自己问题的答案。 在这里。
MPMediaQuery *query = [MPMediaQuery playlistsQuery]; 
NSArray *playlists = [query collections];

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

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接