1
我正在增加循环中clipPath的大小。在循环内部还有另一个循环,它创建了几个clipPath,我使用这些循环来绘制降低的alpha值,以便获得转换效果。但随着clipPath的大小增加,转换变得缓慢而滞后。增加clipPath大小会导致滞后
这件事情是这样
int size = 5;
Paint p1 = new Paint();
Path path = new Path();
for (int i = 0; i < 20; i++) {
path.addCircle(centerX, centerY, size, Path.Direction.CCW);
canvas.clipPath(path);
canvas.drawBitmap(bmp2, 0, 0, null);
path.reset();
int incr = size;
while (p1.getAlpha() != 0) {
incr -= 1;
p1.setAlpha(p1.getAlpha() - 5);
path.addCircle(centerX, centerY, incr, Path.Direction.CCW);
canvas.clipPath(path, Op.UNION);
canvas.drawBitmap(bmp2, 0, 0, p1);
path.reset();
}
size += 10;
}
所需的结果
我知道这是个不错的办法,但是这是我能想到的。
那么,你能否给我一个关于如何实现避免路径变化的效果的想法。 我在帖子中添加了一张图片。 –
@TimeManx请参阅编辑 – bigstones