欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android EasyBarrage实现轻量级弹幕效果

程序员文章站 2023-12-03 11:44:46
本文介绍了android easybarrage实现轻量级弹幕效果,分享给大家,具体如下: 概述 easybarrage是android平台的一种轻量级弹幕效果目前...

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

概述

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

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

github:https://github.com/shiweibsw/easybarrage

显示效果

横屏

Android EasyBarrage实现轻量级弹幕效果

竖屏

Android 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();

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