2014-07-06 6 views
2

드로어 블 폴더에 7 개의 이미지가 있습니다. 화면에 무작위로 표시하고 싶습니다. 그래픽 작업에 익숙하지 않습니다. 지금은 화면에 하나의 이미지 만 표시됩니다. 화면에 임의의 이미지를 표시하려면 어떻게합니까? 감사합니다화면에 랜덤 이미지를 표시하는 방법

public class MyGraphics extends SurfaceView implements Runnable { 

SurfaceHolder ourHolder; 
Thread ourThread = null; 
Boolean isRunning = true; 
int[] images = new int[]{R.drawable.img1, R.drawable.img2, R.drawable.img3, R.drawable.img4, R.drawable.img5, R.drawable.img6,R.drawable.img7}; 


public void run() { 

    while(isRunning){ 

     if(!ourHolder.getSurface().isValid()) 
     continue; 

     Canvas ourCanvas = ourHolder.lockCanvas(); 
     ourCanvas.drawRGB(0, 0, 0); 

     Bitmap img_blue = BitmapFactory.decodeResource(getResources(), R.drawable.mg1); 
     ourCanvas.drawBitmap(img_blue, 0, 0, null); 

     ourHolder.unlockCanvasAndPost(ourCanvas); 
    } 
} 

답변

1

생성 된 숫자 0-6 난수를 생성하고 int 배열에서 이미지 소스를 가져옵니다.

Random rn = new Random();  
int location=rn.rn.nextInt(7);  
Bitmap img_blue = BitmapFactory.decodeResource(getResources(), images[location]); 
+0

바로 지금 ourCanvas.drawBitmap (img_blue, 0, 0, null)을 추가했습니다. 위치 0,0의 이미지가 변경됩니다. 어떻게 화면의 다른 위치에 이미지를 표시 할 수 있습니까, Thnx – artist

관련 문제