0
如何在可點擊的地方繪製圖片?我有onTouch方法,我在哪裏找到我點擊的位置,但我不知道如何在此座標中繪製圖片。畫布和繪畫圖片
如何在可點擊的地方繪製圖片?我有onTouch方法,我在哪裏找到我點擊的位置,但我不知道如何在此座標中繪製圖片。畫布和繪畫圖片
本教程是有幫助的:
http://www.helloandroid.com/tutorials/how-use-canvas-your-android-apps-part-1
實現你所看到的在那裏開始。
然後你就可以更新X和圖像的Y座標(在本教程中,他們都硬編碼到10):
int mXpos = 10;
int mYpos = 10;
public void updateXY(int x, int y) {
mXpos = x;
mYpos = y;
}
@Override
public void onDraw(Canvas canvas) {
Paint paint = new Paint();
Bitmap kangoo = BitmapFactory.decodeResource(getResources(),
R.drawable.kangoo);
canvas.drawColor(Color.BLACK);
canvas.drawBitmap(kangoo, mXpos, mYpos, null);
}
你或許應該初始化mXpos和mYpos在你的構造,但我在這裏爲了簡單起見在這個例子中完成了。
然後在Canvastutorial的onCreate,添加OnTouchListener:
mGamePanel = (Panel) this.findViewById(R.id.SurfaceView01);
mGamePanel.setOnTouchListener(new OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent event) {
mGamePanel.updateXY((int)event.getX(), (int)event.getY())
return true;
}});
,或者根據您的需求,您可以創建X,Y點的ArrayList和每次添加一個新的點在onTouch,然後在您的在canvas的onDraw方法中,您將迭代每個點的canvas.drawBitmap(kangoo,10,10,null)行。