我尝试创建一个绘制背景颜色的视图,其上面有一个图像。图像应该用矩阵变换。背景不应该是。
onDraw()
方法如下所示:
protected void onDraw(Canvas canvas) {
canvas.drawRect(0, 0, canvas.getWidth(), canvas.getHeight(), paint);
Drawable drawable = getImageDrawable();
if (drawable == null) {
return;
}
int count = canvas.save();
if (clipRect != null) {
canvas.clipRect(clipRect);
}
canvas.concat(matrix);
drawable.draw(canvas);
canvas.restoreToCount(count);
}
在我测试的某些设备上,图像上方和左侧的背景未正确绘制。观看视频: https://youtu.be/rno2XxaeNUA您需要暂停视频才能看到正在发生的事情。
答案 0 :(得分:0)
此问题是由意外覆盖View.getMatrix()