-->

How to set music playback slider in music player

2019-06-23 19:08发布

问题:

i created a music player with previous and next functionality in my app.i want to impliment song playback slider. how to do this?

回答1:

Use a UISlider setting the maxValue to the current playing song duration (in seconds) and the minValue to 0.

Assuming that you're using an MPMusicPlayerController use the currentPlaybackTime to get the current time of the playing track and use that value to update the slider each second

slider.value = musicPlayerController.currentPlaybackTime;
slider.minimumValue = 0;
slider.maximumValue = [musicPlayerController.nowPlayingItem valueForProperty:@"MPMediaItemPropertyPlaybackDuration"];


回答2:

- (IBAction)slide:(id)sender{

    [musicPlayer setCurrentPlaybackTime: [slider value]];
}

- (void)actualizaSlider{

slider.value = musicPlayer.currentPlaybackTime;
slider.minimumValue = 0;

NSNumber *duration = [self.musicPlayer.nowPlayingItem valueForProperty:MPMediaItemPropertyPlaybackDuration];

float totalTime = [duration floatValue];

slider.maximumValue = totalTime;