我正在关注动态壁纸的在线教程。在此期间,我遇到了一个我觉得很奇怪的问题。问题是下面代码中的构造函数 MyPoint 说它正在获取 String、int、int 并且它需要 String、float、float。但是,此构造函数中的 x 和 y 引用本地浮点x 和 y。我通过在构造函数中选择 x 或 y 进行检查,本地浮点 x 或 y 会亮起,因此它应该将浮点数作为输入。那么为什么会出现这个错误呢?
@Override
public void onTouchEvent(MotionEvent event) {
if (touchEnabled) {
float x = event.getX();
float y = event.getY();
SurfaceHolder holder = getSurfaceHolder();
Canvas canvas = null;
try {
canvas = holder.lockCanvas();
if (canvas != null) {
canvas.drawColor(Color.BLACK);
circles.clear();
circles.add(new MyPoint(String.valueOf(circles.size() + 1), x, y));
drawCircles(canvas, circles);
}
} finally {
if (canvas != null)
holder.unlockCanvasAndPost(canvas);
}
super.onTouchEvent(event);
}
}
编辑:
确切的错误是:“构造函数 MyPoint(String, float, float) 未定义”
使用快速修复选项:“将构造函数 MyPoint(String, int, int) 更改为 MyPoint(String, float, float)”