안드로이드 스튜디오로 그림을
이동하게 만드는 코드를 짰습니다.
그런데, 제 핸드폰에서의 그림 이동 속도하고
친구의 핸드폰에서의 그림 이동 속도하고
차이가 굉장히 심각할 정도로 많이 납니다.
일단 제 예상으로는 (확실하진 않지만)
화면 크기를 구하는 부분에서 뭔가
잘못된 것 같은데 ... (어디까지나 저의 추측)
아래는 코드 중에 일부분 입니다.
(질문을 쉽게 이해할 수 있도록 만들기 위해
지금 즉석으로 만들어낸 코드입니다.
해결하려는 문제가 발생하는 부분의 코드하고
그렇게 큰 차이가 없으므로, 문제의 본질은
변하지 않습니다.)
------------------------------
if(touch==1)
{
moveBallX -= screenWidth/100;
moveBallY -= screenHeight/100;
}
// 터치를 했을 때 그림이 움직임
if(touch==0)
{
moveBallX += screenWidth/100;
moveBallY += screenHeight/100;
}
// 터치한 손을 땠을 때 그림이 반대로 움직임
/* 처음에는 5씩 증가 또는 감소하게 만들었습니다.
그래서 그게 문제인 줄 알고 위에 보이는 것처럼
화면의 가로, 세로를 100등분으로 나눈 결과 값씩
증가 또는 감소하게 했는데도 해결이 안되네요. */
canvas.drawCircle(moveBallX, moveBallY, 50, paint);
@Override
public void onSurfaceTextureAvailable(SurfaceTexture surfaceTexture, int i, int i1)
{
screenWidth=i;
moveBallX=i;
screenHeight=i1;
moveBallY=i1;
}
/* 이 메소드의 인자 값이 화면 크기를
가지고 있는 값 아니던가요? 근데 왜 이런
문제가 발생하는 건지 ... */
------------------------------
문제가 무엇인지 알고 싶습니다.
도와주세요. ㅠㅠ
(참고로 한 가지 더 말씀 드리자면, 위에서
보셨다시피 처음에는 5씩 증가 또는 감소를
시켰다고 했었는데, 제 핸드폰에서는 5씩
증감 시켰을 때도 속도가 꽤 빨랐습니다.
최소한 느리다고는 말할 수 없을 정도는 되었어요.
그런데 친구 핸드폰에서는 엄청 느려터졌더군요.
그래서 화면 가로, 세로 100등분 나누기 결과 값으로
바꾸었는데도 여전히 문제는 해결되지 않았습니다.)