2011-08-25 62 views
0

当用户单击屏幕时,我可以使用Canvas.drawBitmap()绘制图像。然后我想改变它的坐标。但我不能。我尝试了很多方法。互联网上的一些教程给出了拖放示例。但它希望用户按更长的时间。我必须能够立即改变它的坐标。我怎样才能做到这一点?我可以在画布上绘制图像,然后更改其坐标

+0

你想画一个位置然后在另一个位置重绘它? – confucius

+0

不,不是另一个。我想使用绘制的位图 – slhddn

回答

2

您必须在这些坐标中再次绘制Bitmap。在此之前,请使用Canvas.drawColor(0, PorterDuff.Mode.CLEAR)清除屏幕。

+0

它的工作。非常感谢 :) – slhddn

1

这是不可能的,因为你已经描述过,但有两种可能性来实现你的目标。首先使用Canvas.drawBitmap()有一系列的方法可以很容易地转换图像。第二次使用画布集转换,您可以将其视为“移动/滚动/缩放”(更精确地转换)画布的可视区域。将钩子周围的图像移动到SurfaceView的onTouch处理程序中。

+0

对不起,它不是drawImage。正如你所说,我使用了drawBitmap()。但上面写错了。其实,我不明白我如何使用之前创建的位图。绘制,但如何使用它作为一个对象? 位图_scratch = BitmapFactory.decodeResource(getResources(),R.drawable.icon); \t \t canvas.drawBitmap(_scratch,touched_x,touched_y,null); – slhddn

+0

那么为什么不使用不同的x和y在不同的位置绘制位图呢? –

+0

我不希望旧的和Che的答案为我工作。感谢您的时间:) – slhddn