3

我想知道用戶何時使用媒體選擇器選擇歌曲,他們從哪首播放列表中選擇歌曲。出於某種原因,播放列表似乎不存在。iOS - 從didPickMediaItems獲取播放列表

基本上,當用戶轉到媒體選擇器中的播放列表時,我們稱之爲「健身房歌曲」,然後他們選擇一首歌曲,mediaPicker:didPickMediaItems:函數返回歌曲詳細信息,但不會說用戶選擇了哪個播放列表。

所以我想要做的就是播放該歌曲並繼續播放該播放列表中的其他歌曲。但是如果沒有播放列表信息,它會開始播放該歌曲,然後繼續播放「所有歌曲」列表中剩餘的歌曲。

這是我的代碼:

(void) mediaPicker: (MPMediaPickerController *) mediaPicker didPickMediaItems: (MPMediaItemCollection *) mediaItemCollection 

{ 

    MPMediaItem *selectedSong = [[mediaItemCollection items] objectAtIndex:0]; 

    MPMediaQuery *songQuery = [MPMediaQuery songsQuery]; 
    [musicPlayer setQueueWithQuery:songQuery]; 
    for (MPMediaItem *oneSong in [songQuery items]) { 

     if ([selectedSong isEqual:oneSong]) { 
      musicPlayer.nowPlayingItem = oneSong; 
      [musicPlayer play]; 

      // Exit the loop 
      break; 
     } 
    } 
    [self dismissModalViewControllerAnimated: YES]; } 

回答

2

,此數據沒有提供。你唯一的選擇就是自己在代碼中完成所有這些。建立一個tableview並將其與所有播放列表一起放入庫中。當用戶選擇一個播放列表放置另一個包含該播放列表中所有曲目的桌面視圖並允許用戶選擇一個。

+0

這很糟糕,我希望我不必這樣做,所以我可以使用漂亮的iPhone音樂選取器頁面。任何想法爲什麼播放列表信息不可用? – user1122025 2012-08-16 19:12:41

+1

由於iPod音樂播放器可以被任何應用程序使用,應用程序可以製作自己的播放列表。因此係統無法告訴你下一個要播放哪個音軌。 – amergin 2012-08-19 23:19:02

相關問題