3
안녕하세요 저는 캔버스에 정사각형 8x8 격자를 만들려고합니다. 저는 그리드를 만들었지 만 직사각형으로 판명되었지만, 게임을 위해서는 사각형이되어야합니다. 코드를 변경하여 전화에 맞게 정사각형 격자로 만들 수 있습니까?정사각형 격자를 모든 휴대 전화 크기로 축척하는 방법
float testWidth = (getWidth() - 16f)/9f;
float testHeight = (getHeight() - 16f)/9f;
for (int i = 0; i < 9; i++) {
canvas.drawLine(padding + testWidth* i, padding, padding
+ testWidth * i, testHeight* 8+padding, dark);
canvas.drawLine(padding, padding+testHeight* i, testWidth* 8
+ padding, padding+testHeight* i, dark);
}
편집 : 나는 지금 사각형 격자를 만들 수 있습니다,하지만 난 휴대 전화의 중앙으로 그리드를 중심으로하는 방법을 모른다
간단한 로직 : float cellSize = Math.min (testWidth, testHeight); – appsroxcom
아, 물론! 고맙습니다. 한 가지 더 묻습니다. 이것은 그리드가 캔버스의 3/4을 차지하고 바닥 1/4은 완전히 비어 있음을 의미합니다. 어떻게 그리드를 캔버스의 중심에 배치 할 수 있습니까? – user1953208
ABS (높이 - 너비)/2로 뷰 간격 띄우기 –