2016-12-09 2 views
0

Hallo ich Songtitel in Tableview mit diesem Code erhalten:Wiedergabe Lied mit MPMediaItemPropertyTitle

MPMediaQuery *everything = [[MPMediaQuery alloc] init]; 

    NSArray *itemsFromGenericQuery = [everything items]; 

    for (MPMediaItem *song in itemsFromGenericQuery) { 

     NSString *songTitle = [song valueForProperty: MPMediaItemPropertyTitle]; 
     [songTitleArray addObject:songTitle]; 
    } 

Jetzt will ich innen Tableview das Lied spielen i hinzugefügt Zwei-Knopf-Wiedergabe und Stopp, wie in derselben Viewcontroller mit Titel zu spielen.

bitte helfen.

+0

hoffen, dass dies hilfreich: http: // stackoverflow.com/questions/13352767/mpmediaquery-search-for-artists-albums-and-songs – Amanpreet

+0

@Amanpreet Bei diesem Link wurde festgestellt, dass wie Titel des Songs zu bekommen. Ich habe bereits Titel geholt. Jetzt will ich spielen. –

Antwort

0

Song zu spielen, so etwas wie tun:

MPMusicPlayerController *controller = [MPMusicPlayerController iPodMusicPlayer]; 

MPMediaItemCollection *collection = [[MPMediaItemCollection alloc] initWithItems:arrayOfMediaItems]; 
MPMediaItem *item = [collection representativeItem]; 

[controller setQueueWithItemCollection:collection]; 
[controller setNowPlayingItem:item]; 

[controller prepareToPlay]; 
[controller play]; 

Sie auch AVPlayer verwenden können, um Lied zu spielen, nach dem Pflücken es durch MPMediaPickerController:

- (void) mediaPicker: (MPMediaPickerController *) mediaPicker 
    didPickMediaItems: (MPMediaItemCollection *) collection { 


    MPMediaItem *item = [[collection items] objectAtIndex:0]; 
    NSURL *url = [item valueForProperty:MPMediaItemPropertyAssetURL]; 

    [self dismissModalViewControllerAnimated: YES]; 

    // Play the item using MPMusicPlayer 

    MPMusicPlayerController* appMusicPlayer = [MPMusicPlayerController applicationMusicPlayer]; 

    [appMusicPlayer setQueueWithItemCollection:collection]; 
    [appMusicPlayer play]; 


    // Play the item using AVPlayer 

    AVPlayerItem *playerItem = [[AVPlayerItem alloc] initWithURL:url]; 
    AVPlayer *player = [[AVPlayer alloc] initWithPlayerItem:playerItem]; 
    [player play]; 

} 
+0

was in ArrayOfMediaItems geschrieben werden soll. Ich habe den Title of Song von My snippets bekommen. Gibt es eine Möglichkeit, Songs basierend auf meinem Songtitel abzuspielen? Mein Array hat nur Titel. –

+0

Ich möchte nicht präsentieren MPMediaPickerController. so dass diese Delegierten Methode didPickMediaItems keine Verwendung –

+0

Warum spielen Sie nicht direkt "Song", anstatt seinen Titel und Speichern in "songTitleArray". Spiele es direkt. – Munahil

Verwandte Themen