bilibili / DanmakuFlameMaster

Android开源弹幕引擎·烈焰弹幕使 ~
http://app.bilibili.com/
Apache License 2.0
9.54k stars 2.1k forks source link

弹幕设置透明度 setDanmakuTransparency 方法 调用后,在view 上的弹幕部分不变色,或者变的更深 #406

Closed allenZ7 closed 5 years ago

allenZ7 commented 5 years ago

setDanmakuTransparency 这方法后,在屏幕上的弹幕部分颜色会变深

allenZ7 commented 5 years ago

问题解决了,感觉是个bug ,弹幕在AndroidDisplayer 这个类里的draw() 里有这么个调用了resetPaintAlpha(mDisplayConfig.PAINT); 里面的语句为 if (paint.getAlpha() != AlphaValue.MAX) { paint.setAlpha(AlphaValue.MAX); }
导致了mDisplayConfig.PAINT的透明度被重置为最大的了,我是这样改的, 用mDisplayConfig.PAINT.setAlpha(mDisplayConfig.transparency());替换掉resetPaintAlpha