Android EasyBarrage实现轻量级弹幕效果
作者:Knight_Davion 时间:2022-03-07 06:46:31
本文介绍了Android EasyBarrage实现轻量级弹幕效果,分享给大家,具体如下:
概述
EasyBarrage是Android平台的一种轻量级弹幕效果目前支持以下设置:
自定义字体颜色,支持随机颜色;
自定义字体大小,支持随机字体大小;
支持边框显示,用于区分自己的弹幕和其他弹幕;
自定义边框颜色;
弹幕数据是否允许重复;
自定义单屏显示的最大弹幕数量;
数据不重叠;
支持动态添加弹幕;
不依赖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();
来源:http://www.jianshu.com/p/60cb223b951b?utm_source=tuicool&utm_medium=referral
标签:Android,弹幕
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
详解如何让Spring MVC显示自定义的404 Not Found页面
2023-12-12 15:48:47
![](https://img.aspxhome.com/file/2023/1/72571_0s.jpg)
spring boot实战教程之shiro session过期时间详解
2023-01-05 01:37:47
Unity TextMeshPro实现富文本超链接默认字体追加字体
2021-10-13 23:57:24
![](https://img.aspxhome.com/file/2023/1/85671_0s.png)
Java设计模式之接口隔离原则精解
2022-05-05 16:42:05
![](https://img.aspxhome.com/file/2023/5/80935_0s.png)
C#中Predicate<T>与Func<T, bool>泛型委托的用法实例
2022-11-14 13:28:46
Java关系操作符简写介绍
2023-12-25 12:56:29
C#实现一个控制台的点餐系统
2023-09-03 20:47:24
![](https://img.aspxhome.com/file/2023/1/113881_0s.jpg)
Springboot实现多服务器session共享
2022-09-06 13:58:34
![](https://img.aspxhome.com/file/2023/8/88188_0s.png)
spring springMVC中常用注解解析
2023-09-14 20:45:46
Servlet的5种方式实现表单提交(注册小功能),后台获取表单数据实例
2022-08-19 20:58:06
![](https://img.aspxhome.com/file/2023/3/76323_0s.png)
Android编程之控件状态配置文件实例
2023-07-26 02:38:54
SpringBoot加载应用事件监听器代码实例
2023-06-15 14:28:07
Spring-boot JMS 发送消息慢的解决方法
2023-02-06 07:50:54
Java使用组件编写窗口实现网络图片显示
2023-04-14 18:06:04
![](https://img.aspxhome.com/file/2023/3/110883_0s.jpg)
C#实现文件筛选读取并翻译的自动化工具
2021-11-07 18:49:46
![](https://img.aspxhome.com/file/2023/1/106521_0s.png)
android在连拍菜单中增加连拍张数选项功能实现代码
2023-05-27 19:08:38
Java基于Tcp协议的socket编程实例
2022-03-08 00:04:13
Java实现解析JSON大文件JsonReader工具详解
2023-08-21 21:13:14
SpringBoot整合WebSocket的客户端和服务端的实现代码
2023-03-30 04:19:07
C#简单的加密类实例
2022-12-15 11:31:18