2012-05-02 5 views
0

나는 사용자 정의 이미지와 표준 검정색 배경을 대체하는 시도,하지만 난 그것을 구현하는 방법에 관해서는 확실하지 오전입니다 ...onDraw를 사용하여 캔버스에 배경 이미지?

코드 (캔버스는 onDraw 방법) :

@Override 
    protected void onDraw(Canvas c) { 
     //c.drawARGB(255, 0, 0, 0); 

     if (overlay.tick()) 
      if (!todraw.tick()) 
       mintercept.endGame(); 
     todraw.draw(c, Layer.BACKGROUND); 
     todraw.draw(c, Layer.CITIES); 
     todraw.draw(c, Layer.TRAILS); 
     todraw.draw(c, Layer.EXPLOSIONS); 
     todraw.draw(c, Layer.MISSILES); 
     todraw.draw(c, Layer.CHROME); 
     overlay.draw(c, Layer.CHROME); 
    } 

    public abstract void reset(); 
} 

주석으로 라인 검은 배경에 대한 책임이 있었다. 공백은 사용자 정의 배경 이미지를 구현하기 위해 예약되어 있습니다. 어떻게해야합니까?

답변

0

캔버스에는 drawBitmap 방법이 있습니다. 리소스에서 BitmapFactory을 사용하여 이미지를 가져 와서 그려야합니다.

+0

작동하는 것처럼 보이지만 모든 이미지가 표시되지는 않습니다 (너무 큼, 실제로는 화면의 크기와 동일합니다 ...). 그것은 또한 에뮬레이터의 성능을 저하시키는 것으로 보이며 실제 장치로 변환됩니까? 팁을 주셔서 감사합니다. – tadamson

+0

합리적으로 효율적이어야합니다 : 에뮬레이터는 꽤 느립니다. 거의 정확한 크기로 렌더링해야합니다 : 테두리/여백/패딩 문제가 화면에 있습니까? – Femi

관련 문제