我在iOS 6和iOS 7之间有两种奇怪的分歧行为。

我想向最终用户展示MPMediaPicker,允许他们选择1首歌曲,然后开始向他们播放。

因此,我向他们展示了MPMediaPicker(/ not / multi和/ not / cloud,如果支持的话)。

两个问题:

  • 在iOS6中,MPMediaPicker的第一个屏幕显示歌曲。在iOS7中,
    这是(空)播放列表。如何强制MPMediaPicker进行
    将歌曲显示为默认的第一屏幕?这仅仅是苹果公司“知道最好”的另一个例子吗?
  • 在iOS7中,列表中的媒体项目旁边有一个红色(+)符号。什么
    原因是什么?我还无法为此找到任何参考
    在谷歌。什么是(+)符号?它似乎并没有与表格中的行分开突出显示。本机媒体选择器不会显示此内容。

  • 谢谢!

    -肯

    我们的MPMediaPicker代码:
    - (void)showSongPicker {
    // TODO check if iOS 6
    MPMediaPickerController* songPicker = [[MPMediaPickerController alloc] initWithMediaTypes:MPMediaTypeMusic];
    
    songPicker.delegate = self;
    songPicker.allowsPickingMultipleItems = NO;
    
    songPicker.showsCloudItems = NO;
    
    [self presentViewController:songPicker animated:YES completion:nil];
    
    [self presentModalViewController:songPicker animated:YES];
    }
    
    #pragma mark MPMediaPickerControllerDelegate
    
    - (void)mediaPicker: (MPMediaPickerController *)mediaPicker didPickMediaItems:(MPMediaItemCollection *)mediaItemCollection {
    MPMediaItem* item = [mediaItemCollection.items objectAtIndex:0];
    
    [self playMediaItem:item];
    
    [self mediaPickerDidCancel:mediaPicker];
    }
    
    - (void)mediaPickerDidCancel:(MPMediaPickerController *)mediaPicker {
    [self dismissViewControllerAnimated:YES completion:nil];
    }
    

    最佳答案

    哦!我很抱歉我忘了回答这个。

    由于我没有从其他任何人那里得到答案(直到现在,谢谢lap.felix),因此我将其作为技术问题提交给Apple。

    他们的答案?
    没有编程方式可以影响选择器的行为。如果您需要“大幅度”更改行为,则必须滚动自己的媒体选择器。

    所以...是的...谢谢苹果

    -肯

    关于ios - iOS 7和MPMediaPicker,为什么还要加?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20479297/

    10-09 02:17