1
터치 및 관련 이동을 등록하려면 Android onTouchEvent를 사용하고 있습니다. 그런 다음 해당 경로를 따라 스프라이트를 반복합니다.마지막 요소 데이터로 채워진 Android ArrayList
나중에 사용할 수 있도록 손가락으로 추적 한 경로를 저장해야합니다.
문제는 손가락을 화면에서 들어 올린 후 ArrayList (pArray)가 AC 012_ 좌표로 X & Y 위치로 완전히 채워진다는 것입니다.
로그에서 나는 손가락이 움직이는 동안 Arraylist에게 현재 X & Y 위치를 추가하고있는 것을 볼 수 있지만 Arraylist는 Arraylist.size() - 1의 데이터로 덮어 씁니다.
누군가 제안 할 수 있습니까?
public boolean onTouchEvent(MotionEvent event) {
synchronized (mHeartbeat.getSurfaceHolder()) {
getXX = event.getX();
getYY = event.getY();
pathArr.setX(getXX);
pathArr.setY(getYY);
pArray.add(pathArr);
if (event.getAction() == MotionEvent.ACTION_DOWN) {
} else if(event.getAction() == MotionEvent.ACTION_MOVE) {
} else if(event.getAction() == MotionEvent.ACTION_UP) {
}
return true;
}
}
고맙습니다. 작동합니다. 아직도 pathArr의 내용을 덮어 쓸 때마다 혼란스러워서 배열로 복사하고 새로운 경로를 만들지 않을 것입니다. 메모리를 그냥 먹는다고? – Matt