我正在使用AVAudioPlayer播放歌曲。我有一个MPMediaItem数组。我希望按钮点击顺序和随机播放。
我的代码是:
AVAudioPlayer *player2;
MPMediaItem *item = [arrAnand objectAtIndex:i];
NSURL *url = [item valueForProperty:MPMediaItemPropertyAssetURL];
[player2 release];
player2 = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:nil];
[player2 play];
请帮忙。
答案 0 :(得分:0)
如果您正在播放iPod库中的歌曲,那么您可以使用MPMusicPlayerController
,此类包含一堆属性来更改shuffleMode
或repeatMode
等状态。
如果您使用AVAudioPlayer
添加接收方通知AVPlayerItemDidPlayToEndTimeNotification
并在观察者内部查询您的数组arrAnand
以获取随机mediaItem
希望这会对你有所帮助。
修改:
内部itemDidFinishPlaying
-(void)itemDidFinishPlaying
{
MPMediaItem *item = [arrAnand objectAtIndex:i];
NSURL *url = [item valueForProperty:MPMediaItemPropertyAssetURL];
if(player2)
{
[player2 release];
player2 = nil;
}
player2 = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:nil];
[player2 play];
}
注意:其中i是任意随机数(应小于[arrAnand count])。