3

我在 iOS 6 和 7 之间有两个奇怪的不同行为。

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

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

两个问题:

  • 在 iOS6 中,MPMediaPicker 的第一个屏幕显示歌曲。在 iOS7 中,它是(空的)播放列表。如何强制 MPMediaPicker 将歌曲显示为默认的第一个屏幕?这只是Apple“最了解”的另一个例子吗?
  • 在 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];
}
4

2 回答 2

1

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

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

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

所以......是的......谢谢,Apple。

-肯

于 2014-01-04T21:51:11.380 回答
0

+ 除了“将此项目添加到选择器选择”之外,没有其他任何含义

于 2014-01-03T18:05:13.887 回答