我的问题是如何在 Canvas 上 move 位图?
最近在做游戏,有个按钮。
当我点击这个按钮时,我想 move 位图(仅限 X) 但是当我这样做时,位图消失了。
代码如下:
“main_right”是我点击的按钮。 我也尝试将“invalidate()”放在那里,但它也没有用。
@Override
public boolean onTouchEvent(MotionEvent event) {
final float x = event.getX();
final float y = event.getY();
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
if (x > width - main_right.getWidth()
&& x < width - main_right.getWidth()
+ main_right.getWidth()
&& y > height
- (main_right.getHeight() + main_right.getHeight() / 2)
&& y < height
- (main_right.getHeight() + main_right.getHeight() / 2)
+ main_right.getHeight()) {
x += 1;
canvas_main.drawBitmap(image, (width / 2) + x2,
height - (image.getHeight() + image.getHeight() / 2),
paint);
} else {
x = 0;
}
return true;
}
return false;
}
最佳答案
将 x 位置存储在 onTouchEvent 上,并在 onDraw(Canvas) 内的 Canvas 上绘制,这是您需要绘制的表面。
关于java - 在 Canvas android java中 move 位图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30985934/