EasyBarrage——Android平臺輕量級彈幕效果

Knight_Davion發表於2019-02-27

概述

EasyBarrage是Android平臺的一種輕量級彈幕效果目前支援以下設定:

  1. 自定義字型顏色,支援隨機顏色;
  2. 自定義字型大小,支援隨機字型大小;
  3. 支援邊框顯示,用於區分自己的彈幕和其他彈幕;
  4. 自定義邊框顏色;
  5. 彈幕資料是否允許重複;
  6. 自定義單屏顯示的最大彈幕數量;
  7. 資料不重疊;
  8. 支援動態新增彈幕;
  9. 不依賴VideoView,資料自動迴圈顯示。

githubgithub.com/shiweibsw/E…

顯示效果

橫屏

豎屏

使用

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();複製程式碼

相關文章