gpt4 book ai didi

java - Android:使用onDoubleTap画圆

转载 作者:行者123 更新时间:2023-12-01 11:45:41 24 4
gpt4 key购买 nike

我创建了一个扩展 ImageView 的公共(public)类,名为 ZoomInZoomOut。在此 View 中,按下一根手指可以让用户拖动图像。两根手指的捏合和捏合允许用户放大或缩小。这些都工作正常。

现在我想双击以在用户触摸的确切 x 和 y 坐标处绘制一个圆。由于某种原因,下面的代码没有画一个圆圈......什么也没有发生。

class MyGestureDetector extends SimpleOnGestureListener {



@Override
public boolean onDoubleTap(MotionEvent event) {


Bitmap bmOverlay = Bitmap.createBitmap(containerWidth,
containerHeight,
Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bmOverlay);
Paint p = new Paint();
p.setAntiAlias(true);
p.setColor(Color.RED);
p.setStrokeWidth(2);
p.setStyle(Paint.Style.STROKE);
canvas.drawBitmap(bmOverlay, matrix, null);
canvas.drawCircle(event.getX(),event.getY(),
100, p);

return true;
}



@Override
public boolean onDown(MotionEvent e) {
return false;
}
}

最佳答案

绘制位图后,您不会对位图执行任何操作。您还尝试将位图绘制到从位图创建的 Canvas 上。

您应该重写 onDraw 并在那里绘制位图,同时使用 onDoubleTap 根据需要更新位图。

关于java - Android:使用onDoubleTap画圆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29153219/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com