0
나는 안드로이드 스튜디오에서 브레이크 아웃 게임을 코딩하고있다. 벽돌을 배열로 설치하고 그림을 그리도록 설정했습니다. 그러나 모든 벽돌은 서로 위에 그려져 있습니다.모든 벽돌을 위에 겹쳐서 쌓아 올리는 프로젝트
BreakoutView 클래스 추출물 :
private static final int rows = 5;
private static final int columns = 10;
private static final int brickHeight = 50;
private static final int brickWidth = 100;
int brickX = 0;
int brickY = 0;
int brickSpaces = 0;
private Sprite[] bricks;
public BreakoutView(Context context, AttributeSet attrs) {
super(context, attrs);
bricks = new Sprite[rows * columns];
for (Sprite brick: bricks) {
brick.setSize(brickWidth, brickHeight);
brick.setLocation(brickX, brickY);
brick.paint.setARGB(255,250,0,0);
}
}
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
for (Sprite brick : bricks) {
for (int r = 0; r <= rows; r++) {
brickY = brickHeight + brickSpaces;
for (int c = 0; c <= columns; c++) {
brickX = brickWidth + brickSpaces;
brickSpaces = 10;
}
}
}
}
Sprite 클래스 :
public class Sprite {
public RectF rect = new RectF();
public float dx = 0;
public float dy = 0;
public Paint paint = new Paint();
public Sprite(float x, float y, float width, float height) {
setLocation(x, y);
setSize(width, height);
}
}
여기에 게시 코드는 어떤 스프라이트를 작성하지 않습니다. 문제가 있음을 나타내는 가장 작은 코드 블록을 게시하십시오. – Jason