2012-01-03 5 views
2

나는 Android Newbie이고 Android 용 게임 응용 프로그램을 개발 중입니다. 내 보드에 단 하나의 돌을 그리는 데 문제가 있습니다.
여기 내 onDraw() 메소드가 있습니다.Android 용 보드 돌 그리기 Go Game App

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

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

그리고 나는 onTouch() 메소드가 있습니다

setBackgroundColor(Color.WHITE); 

적용 할 수있는 ':이 방법을 사용하여 내 클래스의 constructor에에 배경 색상을 설정할 때

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

점이며, touchEvent 후에 보드에 돌을 그 으려하지 만, 배경색을 설정하지 않으면 응용 프로그램에서 돌을 완벽하게 그립니다.
P. 속성 stoneX, stoneY가 올바르게 정의되고 초기화됩니다.

답변

2

당신이 사용하고있는 뷰는 모르겠지만 배경으로 SurfaceView을 사용하면 몇 가지 문제가 있다는 것을 알고 있습니다. (다른 뷰도 마찬가지 일 수 있습니다.) 배경이 위에 그려지는 곳에 배경을 얻으십시오. setBackgroundColor(Color.WHITE)와 배경 색상을 설정

대신, 당신은 당신의 onDraw()canvas.drawColor(Color.WHITE)로 시작해야합니다.

+0

SurfaceView를 사용하고 있습니다. 고맙습니다. 추신 배경 이미지를 설정하려면 어떻게해야합니까? –

+0

당신은 환영합니다, 질문에 대답 해 주신 것을 기억하십시오 :) 배경 이미지를 사용하려면 drawButton으로 drawColor를 대체하고 그런 식으로 이미지를 그릴 수 있습니다. 또는 드로어 블이있는 경우 draw() 당신의 onDraw에서. – Jave

+0

고맙습니다. –