본문 바로가기

나의 플랫폼/안드로이드

[ Android ] CalledFromWrongThreadException

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

CalledFromWrongThreadException


Thread를 써서 UI에 먼가 뿌릴려고 할 때,

꼭 한번씩 보게되는 Exception 


Only the original thread that created a view hierarchy can touch its views. 

=> 축약으로 메인스레드에서 UI 변경해!!! 메인스레드에서 만들었으니!!!

라는 의미이다.. 


그럼 해결책은~!! 메인 스레드에서 변경이 되도록 해주는 것이다.


이럴 경우, Handler를 이용하여 하는 방법도 있지만 아주 간편한 방법이 있어 소개한다.

    runOnUiThread(new Runnable() {

            public void run() {

            ....// UI 변경 코드 넣자!!!

            }

       });

UI Thread 에서 Run을 시킨다는 의미이다.


위 run 함수를 이용하게 되면 어렵지 않게 수정이 가능하다.


그럼 오늘도 즐 코딩~~^^/


참고 사이트 : http://www.androidpub.com/32805