[IOS]——播放器AVPlayer的实现

简述

AVPlay既可以用来播放音频也可以用来播放视频,AVPlay在播放音频方面可以直接用来播放网络上的音频。在使用AVPlay的时候我们需要引入头文件
#import<AVFoundation/AVFoundation.h>

AVPlayer —— 音频播放

1. 首先导入头文件 #import<AVFoundation/AVFoundation.h>以及声明属性player和播放按钮playbutton

#import <AVFoundation/AVFoundation.h>
@property (nonatomic,strong) AVPlayer *player;
@property (nonatomic, retain) UIButton *playButton;

2.播放按钮的设置

代码实现

 // 播放的button
    self.playButton = [UIButton buttonWithType:UIButtonTypeSystem];
    self.playButton.frame = CGRectMake(120,550,52,55);
    [self.playButton setBackgroundImage:[UIImage imageNamed:@"播放"] forState:UIControlStateNormal];
    [self.playButton addTarget:self action:@selector(playorpause:) forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:self.playButton]; 

播放按钮的响应事件playorpause

#pragma mark - 播放或者暂停
- (void)playorpause:(UIButton *)button {
    self.isPlay = !self.isPlay;
    if(self.isPlay){
        [button setBackgroundImage:[UIImage imageNamed:@"播放"] forState:UIControlStateNormal];
        //player播放音频
        [self.player play];
    }
    else{
        [button setBackgroundImage:[UIImage imageNamed:@"暂停"] forState:UIControlStateNormal];
        //停止播放音频
        [self.player pause];
    }
}

效果图

在这里插入图片描述

3.player ——导入音频文件

下述代码的实现建议是从下往上,层层递进(写的时候代码里面是有提示的,不懂的话大家实操一下就明白我意思啦)
我解释一下代码:(从下往上理解)就是播放器player需要导入音频项目playerItem,而音频项目里面需要导入音频资源url,而音频资源里面需要导入音频路径path

//创建一个播放器
    //musicPlay是原本传好的歌名,类似于musicplay = @"innocence.mp3"
    NSString *path = [[NSBundle mainBundle]pathForResource:musicPlay ofType:nil];
    NSURL *url = [NSURL fileURLWithPath:path];
    AVPlayerItem *playerItem = [[AVPlayerItem alloc] initWithURL:url];
    self.player = [[AVPlayer alloc] initWithPlayerItem:playerItem];
发布了11 篇原创文章 · 获赞 11 · 访问量 883

猜你喜欢

转载自blog.csdn.net/kk177/article/details/105753176