Iphone:如何在应用程序中显示库中的歌曲列表

标签 iphone objective-c ios xcode ios4

我想在我的应用程序中的列表中显示用户 ipod 中所有歌曲的列表。当用户点击一首歌曲时,我想存储这首歌的名称。

稍后我还想获取那首歌的名称并播放(但不是马上播放)。

有什么想法可以从哪里开始?我知道它可能在 Media.Player 框架中的某个地方,但我似乎无法弄清楚如何从应用程序内部实际查看歌曲列表

最佳答案

您可以使用此调用 MPMediaPickerController:

- (IBAction) selectSong: (id) sender 
{   
    MPMediaPickerController *picker =
    [[MPMediaPickerController alloc] initWithMediaTypes: MPMediaTypeMusic];

    picker.delegate                     = self;
    picker.allowsPickingMultipleItems   = NO;
    picker.prompt                       = NSLocalizedString (@"Select any song from the list", @"Prompt to user to choose some songs to play");

    [self presentModalViewController: picker animated: YES];
}

然后您可以使用类似这样的方法将选择的歌曲添加到您自己的数组中。

注意:您将使用 valueForProperty 从每个轨道访问元数据信息。

- (void) mediaPicker: (MPMediaPickerController *) mediaPicker didPickMediaItems: (MPMediaItemCollection *) mediaItemCollection 
{
    [self dismissModalViewControllerAnimated: YES];
    someMutableArray = [mediaItemCollection mutableCopy];
}

那么这是不言自明但必要的:

- (void) mediaPickerDidCancel: (MPMediaPickerController *) mediaPicker 
{   
    [self dismissModalViewControllerAnimated: YES]; 
}

欲了解更多信息,请访问 Apple's iPod Library Access Programming Guide

关于Iphone:如何在应用程序中显示库中的歌曲列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12395866/

相关文章:

iphone - 在 IM 风格的应用程序中接收新消息的最佳方式

ios - 如何从独立类获取通知(Swift 3)

objective-c - 在 Objective-C 中下载并解析文本文件

objective-c - NSString 字符的位置

ios - 更改 UITableViewCell 中标签的字体属性

iphone - iOS 中的应用程序设置

iphone - 访问模拟器的 NSLibraryDirectory 时出现 NSFileNoSuchFileError

iphone - 延迟 UISearchbar 解析

ios - 自动续订订阅收据验证

objective-c - 以编程方式截取特定区域的屏幕截图