Android上棋牌游戏的应用程序Go游戏应用程序

问题描述:

我是Android新手,我正在开发针对android的Go游戏应用程序。 我在绘制单板上出现问题。
这是我的onDraw()方法。Android上棋牌游戏的应用程序Go游戏应用程序

public void onDraw(Canvas canvas) { 
    //drawing a board 
    //... 
    //... 

    canvas.drawBitmap(stone_image, stoneX - (stone_image.getWidth()/2), stoneY 
    - (stone_image.getHeight()/2),paint); 
} 

而且我有一个onTouch()方法:

public boolean onTouchEvent(MotionEvent event) { 
    stoneX = (int) event.getX(); 
    stoneY = (int) event.getY(); 
    return true; 
} 

的一点是,当我用这个方法在我的课constuctor设置背景色:

setBackgroundColor(Color.WHITE); 

应用可以”在touchEvent之后在棋盘上画一块石头,但是当我没有设置背景颜色时,应用程序会完美地画出一块石头。
P.S.属性stoneX,stoneY被正确定义和初始化。

我不知道您使用的是什么View,但我知道在背景中使用SurfaceView时会出现一些问题(其他视图也可能是这种情况?获得背景。

setBackgroundColor(Color.WHITE)设置背景颜色,而不是,你应该开始你的onDraw()canvas.drawColor(Color.WHITE)

+0

我正在使用SurfaceView。感谢您的建议!附:我该怎么做,设置背景图片? – 2012-01-03 09:51:38

+0

欢迎您,请记住将问题标记为已回答:) 要使用背景图像,可以使用drawBitmap替换drawColor并以这种方式绘制图像,或者如果您有可绘制的,则可以将其称为draw()从你的onDraw。 – Jave 2012-01-03 09:52:27

+0

非常感谢! – 2012-01-03 09:54:09