如果代码在
buildClusterMakerMethod()
Bitmap icon = Bitmap.createBitmap(((BitmapDrawable) context.getResources().getDrawable(R.drawable.cluster1)).getBitmap());
mutableBitmap = icon.copy(Bitmap.Config.ARGB_8888, true);
Canvas iconCanvas = new Canvas(mutableBitmap);
iconCanvas.drawBitmap(mClusterIcon, 0, 0, null); //<=== HERE
...
让我们逐行检查代码。
1) 有一个位图是从drawable创建的
R.drawable.cluster1
并储存在
icon
变量。
2) 图标的副本存储在
mutableBitmap
变量。
3)
可变位图
用于创建画布。这意味着,在画布上执行的所有操作都将被绘制到此位图中。
4) 原始图标(存储在
mClusterIcon
(已归档)绘制在画布上
结束
所需的位图,从而用构造函数中设置的图标/位图覆盖它。
所有3个分支都会发生这种情况。
iconCanvas.drawBitmap(mClusterIcon, 0, 0, null);