2012-02-13 202 views

回答

7

使用UISlider設置包括maxValue到當前播放的歌曲持續時間(以秒爲單位),並是minvalue 0

假設你使用的是MPMusicPlayerController使用currentPlaybackTime獲得播放曲目的當前時間並使用該值來更新所述滑塊每個第二

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

我使用MPmusicplayer。 – 2012-02-13 10:54:12

+0

然後使用MPMusicPlayerController的currentPlaybackTime屬性獲取播放軌道的當前時間,並使用NSTimer每秒更新一次。 – Francesco 2012-02-13 11:07:33

+0

我已經更新了整個答案。 – Francesco 2012-02-13 11:15:23

7
- (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;