-2
안녕하세요. 탭 영역이 장치 경계 내에 있는지 확인하는 if 문이 있습니다. 높은 수준에서 이것이 바로 그 것이다.더 큰 숫자보다 더 작은 숫자가 더 큰 숫자입니다 (If 문).
int width = <WidthOfDeviceInPixels>;
float x = <TappedXCoordinate>;
if(x > width)
{
x = width - sizeOfBox;
}
내 테스트 사례에 따르면 x가 무엇이든간에 항상이 문장이 적용됩니다. 여기에 인쇄 된 몇 가지 로그가 있습니다
너비 : 1440 | X : 220.213 너비 : 1440 | X : 219.128 너비 : 1440 | X : 243.832 너비 : 1440 | X : 238.235
정수를 부동 소수와 비교하기 때문일 수 있습니다. 내 지식에 정수는 자동으로 부동 소수점 형으로 캐스팅 될 것이라고 생각했습니다.
그냥 디버거에서 실행하고 어떤 폭과 x가 if 문을 실행하기 직전인지 확인하거나 값을 인쇄하십시오 – FredK
@FredK 위 값은 인쇄 된 값입니다 –