在自定义画图的时候,对Paint使用了PorterDuff.Mode.CLEAR和PorterDuff.Mode.DST_OUR等后,发现重叠部分被CLEAR后为黑色

黑色情况.png
然而,期望的效果如下

理想情况
原因:PorterDuff.Mode.CLEAR不支持硬件加速
解决办法:初始化View的时候,将下面代码添加即可
setLayerType(View.LAYER_TYPE_SOFTWARE, null);
参考资料
Drawing on Canvas - PorterDuff.Mode.CLEAR draws black! Why?