마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

Asynctask 에서 네트워크작업 이외의 작업에 대해서 질문드립니다.

0 추천
String xmlxml = "<?xml version='1.0' encoding='utf-8'?>"
					+ "<node>122</node>";

위 코드와 같이

String안에 xml 형식으로 넣고  XmlPullparser로 원하는 값(122) 을 textview에 찍어내는 작업을 하고 있는데요.

 


doInbackground 안에서 네트워크작업은 되지만,

 XmlPullparser도 안되고 textview에 settext도 안됩니다.

그리고 Asyctask 이외의 구역에서 Xmlpullparser가 제대로 실행되고 textview에 122도 찍히는데 .. 

doInbackground에서는 
왜 안되는지 감이 안옵니다..

조언좀 부탁드릴게요.

 

 

찬스님 (300 포인트) 님이 2013년 5월 24일 질문
찬스님님이 2013년 5월 24일 수정

3개의 답변

+1 추천
 
채택된 답변
@Override
		protected void onPostExecute(Long result) {
			super.onPostExecute(result);
			//여기다가 textView.setText 해보세요
		}

 

bangbang (8,820 포인트) 님이 2013년 5월 24일 답변
찬스님님이 2013년 5월 25일 채택됨
감사합니다.... UI 쪽 처리라는 간단한 개념이였는데요ㅎ ㅎㅎ
0 추천

UI 는 메인 스레드에서만 다루어야 합니다. 이유나 자세한건 sdk 문서를 보십시오.  

http://developer.android.com/guide/components/processes-and-threads.html

상인 (6,670 포인트) 님이 2013년 5월 24일 답변
감사합니다.  background에서 ui처리를 해서 그랬군요.
0 추천

UI는 백그라운드에서 쓰면 에러가 나는걸루 아는데요...

 

구지 어거지로 꾸역꾸역 쓰고싶으시면.. doingbackground안에,

 

 

runOnUiThread(new Runnable() {
       public void run() {
 
        textView1.setText(Text);
 
 
       }
    });
 
요런거넣어줘요 근데안깔끔함
열심히잘할게요 (1,260 포인트) 님이 2013년 5월 24일 답변
...