一个Android上的弹幕控件Open Danmaku
博客专区 > linsea 的博客 > 博客详情
一个Android上的弹幕控件Open Danmaku
linsea 发表于2年前
一个Android上的弹幕控件Open Danmaku
  • 发表于 2年前
  • 阅读 7852
  • 收藏 10
  • 点赞 1
  • 评论 3

腾讯云 技术升级10大核心产品年终让利>>>   

摘要: OpenDanmaku Android上的弹幕控件
弹幕现在很流行,特别是在视频播放时,安卓上没有简单好用的弹幕控件.
这里提供一个简单易用的自定义弹幕控件.
项目地址: https://github.com/linsea/OpenDanmaku



使用方法

完整的使用方法请查看项目的Demo.

1. 在build.gradle文件中加入依赖.

dependencies {
    compile 'com.linsea:opendanmaku:1.0.0@aar'
 }

2. 在布局文件中加入自定义的弹幕View.
<com.opendanmaku.DanmakuView
        android:id="@+id/danmakuView"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        app:start_Y_offset="0.2"
        app:end_Y_offset="0.8"
        app:max_row="4"
        app:max_running_per_row="2"
        app:pick_interval="1000"
        app:show_debug="false" />

3. 在Activity中生成弹幕对象,并加入到播放列表中.
mDanmakuView = (DanmakuView) findViewById(R.id.danmakuView);

// add danmaku items:
mDanmakuView.addItem(list, true);
mDanmakuView.addItem(new DanmakuItem(this, "Hello World", mDanmakuView.getWidth());

//show danmaku and play animation:
mDanmakuView.show();

//hide and pause playing:
mDanmakuView.hide();

//release all playing and waiting items:
mDanmakuView.clear();

DanmakuView的自定义属性


 * start_Y_offset

第一条播放航道距离弹幕View上边缘的偏移量,注意值是百分比量,以弹幕View的高度为基准,简而言之就是弹幕View的上边缘空出多少百分比.

 * end_Y_offset

与上一个属性类似,最后一条播放航道距离弹幕View上边缘的偏移量,注意值是百分比量,以弹幕View的高度为基准,主要作用是便于在弹幕View的底部留出一定的空白.

 * max_row

设置最多多少条播放航道.

 * max_running_per_row

每条航道上最多同时有多少条弹幕运行.

 * pick_interval 

每隔多少毫秒取出一条弹幕来播放.

 * show_debug 

是否显示航道线及播放帧率,调试时很有用,主要用于调试.


共有 人打赏支持
粉丝 5
博文 11
码字总数 10693
评论 (3)
烟火飘零
这个貌似CPU占用有点高哟, 单独的一个页面用这个还可以,要是有多个这种的view就不太适合了.
BG6FVG
挺厉害的
bolt07
视频播放了。。字幕的字多了一层重影。。。。??
×
linsea
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: