AVAudioPlayer 类
来源:互联网 发布:如何更改淘宝的会员名 编辑:程序博客网 时间:2024/06/05 08:08
- #import <UIKit/UIKit.h>
- #import <AVFoundation/AVFoundation.h>
-
- @interface MyMusicViewController : UIViewController <AVAudioPlayerDelegate>{
- AVAudioPlayer *player;
- UISlider *soundSlider;
- }
-
- @end
- - (void)loadView {
-
- [super loadView];
-
- UIButton *startButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
- UIButton *stopButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
-
- [stopButton setShowsTouchWhenHighlighted:YES];
- [startButton setShowsTouchWhenHighlighted:YES];
-
- stopButton.frame = CGRectMake(110, 0, 100, 50);
- startButton.frame = CGRectMake(0, 0, 100, 50);
-
- [stopButton setTitle:@"stop" forState:UIControlStateNormal];
- [startButton setTitle:@"start" forState:UIControlStateNormal];
-
- [stopButton addTarget:self action:@selector(stopButton:) forControlEvents:UIControlEventTouchDown];
- [startButton addTarget:self action:@selector(startButton:) forControlEvents:UIControlEventTouchDown];
-
- soundSlider = [[UISlider alloc] initWithFrame:CGRectMake(0, 120, 210, 10)];
- [soundSlider addTarget:self action:@selector(sliderValueChanged:) forControlEvents:UIControlEventValueChanged];
- soundSlider.value = 0.5;
-
- player = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"music" ofType:@"mp3"]] error:nil];
- player.delegate = self;
-
- player.currentTime = 142.8;
-
- player.volume = soundSlider.value;
-
- [player prepareToPlay];
- [player play];
-
- NSLog(@"%d",player.numberOfChannels);
-
- [self.view addSubview:stopButton];
- [self.view addSubview:startButton];
- [self.view addSubview:soundSlider];
-
- }
-
- - (void)sliderValueChanged:(id)sender {
-
- UISlider *mySlider = (UISlider *)sender;
- NSLog(@"myslider:%f",mySlider.value);
- player.volume = mySlider.value;
- }
-
- - (void)startButton:(id)sender {
-
- player.currentTime = 142.8;
- [player play];
- }
-
- - (void)stopButton:(id)sender {
-
- [player stop];
- }
-
- - (void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)avplayer successfully:(BOOL)flag {
-
- NSLog(@"end");
- }