2011-09-29 3 views
1

나는 그림 응용 프로그램과 함께 일하고 있습니다. 캔버스에 나는 자유로운 손으로 무언가를 그릴 수 있습니다. 여기서 뭘하는지, 나는 단지 List<path>에 경로를 저장하고 스레드에 의해 동기화 된 캔버스에 그리기. 처음으로 그리기 시작했을 때 너무 부드럽고 속도가 빠르지 만 패스가 증가하면 List<Path> 크기도 커지므로 너무 느리고 끔찍합니다. 내가 목록을 지우면 다시 부드럽게됩니다.스레드와 안드로이드 문제가

하지만 매번 매끄러 워야합니다. 내가 어떻게 해?

어떨까요?

감사합니다

+0

실행 취소 및 다시 실행 기능을 사용하기 위해 저장 목록을 사용하고 있습니까? –

+0

예 목록에서 실행 취소 및 다시 실행을 제공합니다. – Jyosna

+0

다음 목록 대신 스택을 사용할 수 있습니다.이 링크는 http : // sites입니다. google.com/site/tutorialsformobileprogramming/android-tutorials/android-files 실행 취소 및 다시 실행을 위해 스택을 사용하는 경우이 프로그램을 이해하면 프로그램이 유용 할 것이고 속도가 느려지지 않을 것입니다. surfaceView 또는 다른 것 .. 그것은 또한 고려 될 것입니다 ... !! –

답변

0

당신은 당신이 새로운 라인을 그린 영역을 무효화 뷰에서 화면을 새로 무효로 사용하는 경우 생각합니다. 따라서 시스템은 모든 것을 계속 그리지 않을 것입니다. 다른 옵션으로는 이벤트를 처리하고 실행 취소 다시 실행을위한 하나의 목록과 실제 그리기를위한 작은 세부 목록을 유지하는 것입니다.

관련 문제