我的问题是如何在画布上移动位图?

最近我在做游戏,有一个按钮。

当我单击此按钮时,我想移动位图(仅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)内的画布上绘制,这就是您需要绘制的表面。

10-05 18:13