안드로이드 개발 질문/답변
(글 수 45,052)
우선 제 프로그램은,
메인 액티비티(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는 캔버스인데 제 생각에는 액티비티 전환 시에 내부 쓰레드가 꺼지지 않아 그릴 곳을 찾지 못해 발생하는 예외인 것 같습니다.
어떻게 해결하면 좋을지 알려주세요ㅠㅠ



