我在iOS 6和7之間有兩種奇怪的分歧行爲。iOS 7和MPMediaPicker,爲什麼加上?
我想向最終用戶展示MPMediaPicker,讓他們選擇1首歌曲,然後開始播放它們。
因此,我向他們展示了MPMediaPicker(/ not/multi和/ not/cloud,如果支持的話)。
兩個問題:
- 在iOS6的,在MPMediaPicker第一屏幕顯示的歌曲。在iOS7中, 它是(空)播放列表。我如何強制MPMediaPicker以 將歌曲顯示爲默認的第一個屏幕?這只是蘋果「知道最好」的另一個例子嗎?
- 在iOS7中,我在列表中的媒體項目旁邊看到一個紅色(+)符號。 是什麼原因造成的?我一直沒有能夠在谷歌中找到關於 的任何引用。什麼是(+)符號?它似乎沒有單獨強調錶中的行。本機媒體選擇器不顯示此內容。
謝謝!
-Ken
我們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];
}