우선 제 프로그램은,


메인 액티비티(A) 위에


터치 이벤트를 받아 화면을 계속해서 그리는 이너 쓰레드가 포함된 서피스뷰 상속 클래스(B)를 올려놓고


계속 실행하다가 터치값 == 7이 되었을 시


"break" 라는 텍스트뷰만 포함한 간단한 액티비티(C)로 잠시 전환하였다가


일정 시간 후 도로 A로 전환하고 일련의 과정을 반복하는 프로그램입니다.




문제가 있는 부분은 인텐트를 불러 액티비티를 C로 전환하는 부분입니다.


인텐트는 단락 편의상 B에서 처리하고 있는데 조건 만족시 C로 넘어가는 것까진 확인할 수 있으나


곧이어 null pointer exception을 발생하며 프로그램이 죽어버립니다.


오류 로그는 


09-24 21:32:07.468: E/AndroidRuntime(31952): FATAL EXCEPTION: Thread-745

09-24 21:32:07.468: E/AndroidRuntime(31952): java.lang.NullPointerException

09-24 21:32:07.468: E/AndroidRuntime(31952): at edu.esrc.highlightedPad.AnEventMove$DrawThread.doDraw(AnEventMove.java:637)

09-24 21:32:07.468: E/AndroidRuntime(31952): at edu.esrc.highlightedPad.AnEventMove$DrawThread.run(AnEventMove.java:618)



이 줄에 위치한 코드는 

cv.drawColor(Color.TRANSPARENT, Mode.CLEAR);
와
doDraw(c);

입니다.


c와 cv는 캔버스인데 제 생각에는 액티비티 전환 시에 내부 쓰레드가 꺼지지 않아 그릴 곳을 찾지 못해 발생하는 예외인 것 같습니다.

어떻게 해결하면 좋을지 알려주세요ㅠㅠ