Я внедряю музыкальный проигрыватель в свое приложение, и когда пользователь выбирает список воспроизведения, он может контролировать режимы случайного и повторного воспроизведения.
Первоначально, отдельные MPMediaItem
s списка воспроизведения сохраняются в NSArray
(который затем обрабатывается функцией для воспроизведения музыки). Когда пользователь переключает режим перемешивания в положение ON, массив копируется в NSMutableArray
, и объекты перемешиваются (с текущей воспроизводимой композицией с индексом 0). Я хорошо до этого момента; проблема возникает, когда пользователь выключает режим случайного воспроизведения.
Как и в музыкальном приложении iPod, когда пользователь выключает режим воспроизведения в случайном порядке, восстанавливается исходный список воспроизведения с расположением текущей воспроизводимой песни в исходном массиве.
По сути, я хочу, чтобы это произошло:
- Пользователь выбирает дорожку 5 из 12 в списке воспроизведения: теперь воспроизводится дорожка 5 из
12
- Пользователь включает режим перемешивания: теперь воспроизводится дорожка 1 из 12
- Пользователь воспроизводит нажатия Следующая песня: Сейчас играет трек 2 из 12
- Пользователь отключает режим случайного воспроизведения: теперь воспроизводится трек 7 из 12 (где трек
7 - местоположение этой песни в исходном плейлисте, который был
дорожка 2 в произвольном списке воспроизведения).
Надеюсь, я прояснил это достаточно. Я был бы очень признателен за некоторые советы о том, как мне сделать это наиболее эффективным способом.
Спасибо!