我正在尝试在画布上绘制非矩形形状。我需要用草和柏油碎石(道路)等纹理填充它们。我怎样才能做到这一点?我已经尝试重叠不同形状的位图以在一帧上实现这种效果,但随着时间的推移形状不断变化,所以我需要另一种解决方案。 提前致谢 Sameer Raina
答案 0 :(得分:0)
您可以使用BitmapDrawable绘制像这样的无缝模式图像
BitmapDrawable tileImg = new BitmapDrawable(getResources(), R.drawable.image);
tileImg.setBounds(bounds);
tileImg.setTileModeXY(TileMode.REPEAT, TileMode.REPEAT);
tileImg.draw(canvas); // this will fill the canvas.
要使用它创建形状,您应该将画布剪切到与您的形状对应的路径,然后调用tileImg.draw(canvas);
方法,仅填充剪切区域。