간단한 미니 스포츠 게임 만들려고 하는데 막히는 부분이 생겨서 이렇게 질문 올립니다..

비트맴 이미지가 움직일때마다 화면을 갱신할려고 하는데 화면이 갱신이 안되고 

이런 식으로 화면 나옵니다. 어떤식으로 해야 하는지 힌트라도 주시면 감사 하겠습니다.


아래 소스는 스레드 부분 소스 부분입니다.
public void run() {
while (true) {
// 빠른 속도 매프레임마다 구분한다.
Thread.yield();
      end = System.currentTimeMillis();
if (end - start > speed) {
start = end;
repaint(can);
       }
         }
}


public void repaint(Canvas can)
{
can = null;
try{
can = mSurfaceHolder.lockCanvas(null);
synchronized (mSurfaceHolder) {  
  loadImg(can);
                                 postInvalidate();     
  }
}
catch(Exception e){
return;
}finally{
  if((can != null)){
  mSurfaceHolder.unlockCanvasAndPost(can);

  }
  }
}