正在播放歌曲时,如何在 AVAudioPlayer 中制作像 UIProgressView 这样的渐进式 UISlider?
Posted
技术标签:
【中文标题】正在播放歌曲时,如何在 AVAudioPlayer 中制作像 UIProgressView 这样的渐进式 UISlider?【英文标题】:How to make progressive UISlider like UIProgressView in AVAudioPlayer as song is being playing? 【发布时间】:2013-02-07 11:13:48 【问题描述】:实际上,当歌曲在 AVAudioPlayer 中播放时,Slider 会随着歌曲的运行而进行。如果我向前或向后寻找它,我也会从当前歌曲正在播放的位置开始。 但问题是在将滑块搜索到特定位置后,它没有前进并停在那里,但歌曲仍在从该位置运行。
下面的代码:
块引用
myTimer = [NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(updateMyProgressOfCurrentPlayingSong:) userInfo:nil repeats:YES];
-(void)updateMyProgressOfCurrentPlayingSong:(NSTimer *)theTimer
//For Current Song Playing Slider
float progr = [mediaPlayer currentTime]/[mediaPlayer duration];
self.audioCurrentPlayingSlider.value = progr;
//For Slider Value change
-(IBAction)audioCurrentSongPlayingSlider:(id)sender
[myTimer invalidate];
myTimer = nil;
[self.audioCurrentPlayingSlider setMinimumValue:0.0];
[self.audioCurrentPlayingSlider setMaximumValue:[mediaPlayer duration]];
[mediaPlayer setCurrentTime:[self.audioCurrentPlayingSlider value]];
[myTimer methodForSelector:@selector(updateMyProgressOfCurrentPlayingSong:)];
块引用
【问题讨论】:
【参考方案1】:请参阅以下可能对您有所帮助的链接, 1)How to add UISlider to AVPlayer 2)UISlider to control AVAudioPlayer 3)Create a UISlider progress bar and timer (like iPod player) within app 4)http://www.mobisoftinfotech.com/blog/iphone/integrate-music-player-in-iphone/
【讨论】:
以上是关于正在播放歌曲时,如何在 AVAudioPlayer 中制作像 UIProgressView 这样的渐进式 UISlider?的主要内容,如果未能解决你的问题,请参考以下文章
iOS - AVAudioPlayer 在后台不会继续播放下一首歌曲
如何将歌曲从 iPod 库复制到应用程序并使用 AVAudioPlayer 播放?