iOS 播放器思路

来源:互联网 发布:手机追踪软件 编辑:程序博客网 时间:2024/06/03 20:52

播放模式:

1.顺序播放

2.随机播放

3.单曲循环

4.循环播放

5.播放完毕


控制播放的模式,就是控制我们播放的顺序,控制顺序的最重要的参数就是我们的index

也就是我们从前面页面传进来的那个下标值


顺序播放是比较简单的,直接调用我们的下一曲操作就行


循环播放就没啥好讲的了,判断我们当前歌曲是不是最后一首,如果是,那我们在播放完毕以后将index赋值为0即可从头播放


随机播放也是比较简单的,但是我们需要做的内容就是写一个随机数,

这个随机数的范围就是我们放有songListModel的数组元素个数 - 1

将这个值赋予index即可


单曲循环稍微有点恶心,我们需要做的是将index一直赋值为我们当前正在播放的这首歌的index


但是单曲循环,点击上一曲和下一曲的时候,我们是需要将index+=1 或者-= 1的,因为我们手动执行了上下一曲。


接下来说一个播放完毕:

我们可以有多重播放完毕的判断方法,比如时间,但是我们有没有更直观的呢?

在我们的AVPlayer中,有一个可以供我们去一直观察的参数

AVPlayerItemDidPlayToEndTimeNotification

我们可以写一个通知,添加一个观察者,观察这个值来做出一些改变。但是不要去发送通知

我们只需要观察即可。

当我们检测到歌曲播放完毕的时候,我们就会执行我们所做的操作了。


这些播放模式需要一个标识,可以创建一个整型变量来根据我们button点击后做出改变今儿可以判断我们当前的播放模式是什么样的,图片是什么样的




0 0