뷰를 하나 만들어서 캔버스를 삽입했습니다.
주 동작은 도형이나 선을 그리고 해당 정보를 동작마다 스택에 쌓고 있는데요
예를들어 10개의 도형을 그렸다면 10개의 정보가 스택에 쌓입니다.
그런후에 undo를 누르면 화면을 클리어한 다음에 10개중에 마지막 1개를 제외한 9개를 다시 그리는 형식인데 분명히 전부 그린 다음에 invalidate 하는데도 화면이 깜빡거리네요
clearCanvas() -> draw 9개 -> invalidate()
뷰의 Ondraw()에 디버깅을 찍어봐도 invaldate()를 호출한 시점에만 호출되는데 디버깅 하다보면 그전에 화면이 하얗게 한번 클리어되네요.
invalidate할때 한번만 화면이 그려져야 되는데 어딘가 두 번 그려집니다..
뷰랑 캔버스 구조상 OnDraw()타기 전에도 디버깅찍어볼 곳이나 화면이 클리어되는 경우가 있나요?
해당뷰에 있는 Ondraw()타지 않고도 뷰나캔버스가 갱신 될수 있는지 궁금합니다.