一、简介
此播放器大部分控件是由storyboard完成,少部分按钮是由代码实现。一共有三个页面,主页面,播放列表页面,播放页面。
主要的技术有计时器,委托,slider控件的属性等
二。主要代码
//实现AVAudioPlayer中声明的实例方法,当音乐播放完毕是调用它
- (void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)flag;
{
index ++;
if (index == musicList.count) {
index = 0;
}
//停止计时器
[timer invalidate];
[self play1];
}
//页面切换时,停止计时器,清除内存中的页面
- (void)viewWillDisappear:(BOOL)animated
{
[timer invalidate];
}
//音乐播放
-(void)play1
{
NSString *name=musicList[index];
//获取资源文件中的1。MP3的文件路径
NSString *path=[[NSBundle mainBundle]pathForResource:name ofType:@"mp3"];
//从文件路径生成一个URL对象
NSURL *url=[NSURL fileURLWithPath:path];
//AVAudioPlay只能播放本地文件
play11=[[AVAudioPlayer alloc]initWithContentsOfURL:url error:nil];
//代理。。
play11.delegate = self;
//使能,启动速率控制
play11.enableRate=YES;
play11.rate=1;//1为正常
play11.volume=0.5;//控制音量
//play.currentTime=100;//从100秒处开始播放
//每隔0.1秒调用jindu
[play11 prepareToPlay];
[play11 play];
[timer invalidate];
timer=[NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(refreshProgres) userInfo:nil repeats:YES];
}
三、界面