iOS 弹幕的实现

弹幕的特点:

· 一般情况弹幕都是从屏幕右侧进入从左侧飞出
· 弹幕进入屏幕后按照一定的轨迹来运动
· 弹幕移动的速度根据内容的长度来定,内容越长移动速度越快
· 一个弹幕完全进入屏幕后,后边会继续飞入一条新的弹幕
· 弹幕是循环滚动播放的

基于以上特点设计出来的弹幕原理大致如下:

  1. 初始化3个弹幕准备进入屏幕,DataSource为弹幕资源的数据来源地


    iOS 弹幕的实现_第1张图片
  2. 当弹幕陆陆续续进入屏幕,飞行速度与弹幕长度相关,每当其中一个弹道的弹幕完全进入屏幕后,则从数据池中取出一个弹幕在相应弹道进入屏幕,如弹幕4


    iOS 弹幕的实现_第2张图片
  3. 如果某条弹幕已经完全飞出屏幕,则将此弹幕从屏幕中删除,如弹幕1和弹幕3


    iOS 弹幕的实现_第3张图片
  4. 当弹幕全部飞出屏幕,回到步骤1,重新滚动播放

技术实现

首先创建两个类一个,一个是弹幕自身的一个view类BarrageView,第二个是BarrageManagView

你可能感兴趣的:(iOS 弹幕的实现)