我正在尝试通过随着时间的推移在两种状态之间进行更改以编程方式生成以下效果
基本上在第一张图像(状态#1)中,我想获得用我自己的自定义位图填充的文本路径(在上面的示例中为红色圆圈),并且应该在固定距离后重复(恰好是在这种情况下与红色圆圈的直径相同)。在第二张图像(状态 #2)中,红色圆圈采用替代模式,它们的位置是状态 #1 中的空白区域。
从这个问题的答案中,我收集到我可以用BitmapShaders
在我的油漆上。以下是我为一种状态提出的代码。但是,我被卡住了,无法思考如何实现这一目标。
public void drawText(String text, int x, int y) {
Paint defPaint = new Paint();
defPaint.setTextSize(100);
defPaint.setStrokeWidth(0);
defPaint.setStyle(Style.FILL_AND_STROKE);
defPaint.setShader(new BitmapShader(
((AndroidPixmap) Assets.redCircle).bitmap, TileMode.REPEAT,
TileMode.REPEAT));
Path path = new Path();
defPaint.getTextPath(text, 0, text.length(), x, y, path);
canvas.drawPath(path, defPaint);
}
我也尝试过使用,PathEffects
但也没有成功。