MPMediaPickerController 选取本地音频

来源:互联网 发布:mac滴管粉底液 编辑:程序博客网 时间:2024/05/21 06:29
MPMediaPickerController 与 UIImagePickerController 类似,允许用户从音乐库中选取音乐、播客、音频书。
一、创建

 MPMediaPickerController *mpc = [[MPMediaPickerControlleralloc]initWithMediaTypes:MPMediaTypeMusic];    mpc.delegate = self;//委托    mpc.prompt =@"Please select a music";//提示文字    mpc.allowsPickingMultipleItems=NO;//是否允许一次选择多个
上述代码创建了一个 MPMediaPickerController 并设置了相关属性。其中初始化的时候有一个参数是媒体类型,媒体类型可以是下面这些值:
enum {    // audio    MPMediaTypeMusic        = 1 << 0,    MPMediaTypePodcast      = 1 << 1,    MPMediaTypeAudioBook    = 1 << 2,    MPMediaTypeAudioITunesU = 1 << 3, // available in iOS 5.0    MPMediaTypeAnyAudio     = 0x00ff,        // video (available in iOS 5.0)    MPMediaTypeMovie        = 1 << 8,    MPMediaTypeTVShow       = 1 << 9,    MPMediaTypeVideoPodcast = 1 << 10,    MPMediaTypeMusicVideo   = 1 << 11,    MPMediaTypeVideoITunesU = 1 << 12,    MPMediaTypeAnyVideo     = 0xff00,        MPMediaTypeAny          = ~0};typedef NSInteger MPMediaType;
二、委托函数
- (void)mediaPicker:(MPMediaPickerController *)mediaPicker didPickMediaItems:(MPMediaItemCollection *)mediaItemCollection{    /*insert your code*/    for (  MPMediaItem* itemin [mediaItemCollection items]) {    }    [selfdismissModalViewControllerAnimated:YES];    [mediaPicker release];}
在上面这个函数里你可以处理所选取的内容。下面这个函数负责处理选中后取消的动作:
-(void)mediaPickerDidCancel:(MPMediaPickerController *)mediaPicker{    /*insert your code*/    [selfdismissModalViewControllerAnimated:YES];    [mediaPicker release];}

三、显示

你可以在任何需要显示的时候调用下面代码:

    [selfpresentModalViewController:mpc animated:YES];

四、关键点

看完上面的代码你可能明白了,但是又感觉没明白。为什么呢?看第一个回调函数就知道了,回调函数传参好像不认识。 MPMediaItemCollection 的对象的items 就是用户选择项的集合。每一项都是MPMediaItem 类的成员,并可以查询其属性值。属性太多,我就不一一列出了,你去看MPMediaItem类的头文件或者官方文档就明白了。


文章出处:http://m.blog.csdn.net/blog/iukey/7335064

0 0