Я не проверял это, но код ниже - это начало, чтобы получить список воспроизведения и воспроизвести его сотый элемент. Тем не менее, он не сортирует плейлист по частям. Для этого вы можете перебирать элементы списка воспроизведения, извлекать все их имена и помещать имена в словарь с ключами MPMediaItem
(не знаю, работает ли это). Затем вы можете сортировать по названию песни, вызывая -keysSortedByValueUsingSelector:
в словаре, который возвращает массив элементов мультимедиа. Возьмите сотый элемент из этого массива и подайте его на музыкальный проигрыватель.
NSString *playlistToPlay = @"My playlist";
MPMediaQuery *playlistsQuery = [MPMediaQuery playlistsQuery];
NSArray *playlists = [playlistsQuery collections];
for (MPMediaPlaylist *playlist in playlists) {
NSString *playlistName = [playlist valueForProperty:MPMediaPlaylistPropertyName];
if ([playlistName isEqualToString:playlistToPlay]) {
// This is the playlist we are looking for
MPMusicPlayerController *player = [MPMusicPlayerController iPodMusicPlayer];
[player stop];
[player setQueueWithItemCollection:playlist];
// Play the 100th song in the playlist
MPMediaItem *songToPlay = [[playlist items] objectAtIndex:99];
player.nowPlayingItem = songToPlay;
[player play];
// Exit the loop
break;
}
}