我开发了一个具有音频播放功能的 iOS 应用程序。我使用进度视图播放音频并使用水平滑块进行音量控制。
2 我需要帮助的事情:
进度视图是不可编辑的。我的意思是,当曲目正在播放时,用户应该能够将它拖到某个点并从那里播放。与 iOS 音乐应用或 Spotify 相同??
音量滑块允许用户调整音量,但它不能与 iOS 设备音频一起使用。这意味着,当音频电平发生变化时,它应该在实际设备上发生变化。
这是我的代码:
NSString *stringPath = [[NSBundle mainBundle]pathForResource:@"01" ofType:@"MP3"];
NSURL *url = [NSURL fileURLWithPath:stringPath];
NSError *error;
avPlayer = [[AVAudioPlayer alloc]initWithContentsOfURL:url error:&error];
[avPlayer setNumberOfLoops:2];
[avPlayer setVolume:self.sliderVolumeOutlet.value];
[avPlayer stop];
[NSTimer scheduledTimerWithTimeInterval:.1 target:self selector:@selector(updateMyProgress) userInfo:nil repeats:YES];
-(void)updateMyProgress
{
float progress = [avPlayer currentTime]/[avPlayer duration];
self.myProgressView.progress = progress;
}
- (IBAction)sliderVolumeAction:(id)sender {
UISlider *mySlider = sender;
[avPlayer setVolume:mySlider.value];
}
- (IBAction)stopButton:(id)sender {
[avPlayer stop];
[avPlayer setCurrentTime:0];
}
- (IBAction)pauseButton:(id)sender {
[avPlayer pause];
}
- (IBAction)playButton:(id)sender {
[avPlayer play];
}
- (IBAction)backButtonEvent:(id)sender {
[self dismissViewControllerAnimated:YES completion:NULL];
}
- (void)viewWillDisappear:(BOOL)animated
{
[avPlayer stop];
}