Android EasyBarrage实现轻量级弹幕效果

本文介绍了Android EasyBarrage实现轻量级弹幕效果,分享给大家,具体如下:

概述

EasyBarrage是Android平台的一种轻量级弹幕效果目前支持以下设置:

  1. 自定义字体颜色,支持随机颜色;
  2. 自定义字体大小,支持随机字体大小;
  3. 支持边框显示,用于区分自己的弹幕和其他弹幕;
  4. 自定义边框颜色;
  5. 弹幕数据是否允许重复;
  6. 自定义单屏显示的最大弹幕数量;
  7. 数据不重叠;
  8. 支持动态添加弹幕;
  9. 不依赖VideoView,数据自动循环显示。

github:https://github.com/shiweibsw/EasyBarrage

显示效果

横屏

竖屏

使用

1 build.gradle

compile 'com.kd.easybarrage:library:0.0.1'

2 xml

 <com.kd.easybarrage.BarrageView
  android:id="@+id/barrageView"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:layout_above="@+id/send"
  app:allow_repeat="true"
  app:border_color="@color/colorAccent"
  app:line_height="20dp"
  app:max_text_size="20"
  app:min_text_size="14"
  app:random_color="true"
  app:size="200"/>

属性说明

属性 说明
max_text_size 最大字体
min_text_size 最小字体
size 单屏最大弹幕数量
line_height 行高
border_color 边框弹幕的边框颜色
random_color 是否启用随机颜色
allow_repeat 弹幕内容是否可重复

3 Java代码

添加弹幕数据

for (int i = 0; i < 200; i++) {
    mBarrages.add(new Barrage("弹幕数据" + i));
  }  

注意Barrage对象有多种构造,可以设置字体颜色及是否显示边框,例如

3.1指定字体颜色

Barrage b=new Barrage("弹幕数据",R.color.colorAccent);

需要设置 app:random_color="false" 才有效

3.2显示边框

Barrage b=new Barrage("弹幕数据",true);

3.3指定颜色及显示边框

Barrage b=new Barrage("弹幕数据",R.color.colorAccent,true);

3.3只显示内容

Barrage b=new Barrage("弹幕数据");

添加一条弹幕

barrageView.addBarrage(new Barrage("我是新弹幕", true));

结束时调用destroy方法

barrageView.destroy();

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。