안드로이드에서 쓰레드는 어떻게 돌리나요?
조회수 2313회
연습삼아서 화면에 정의한 간격으로 문자열을 출력하는 애플리케이션을 만들어보고 있는데요. 쓰레드를 돌리려고
handler = new Handler();
Runnable r = new Runnable() {
public void run() {
tv.append("Hello World");
}
};
handler.postDelayed(r, 1000);
이런 식으로 Handler 클래스를 사용했는데 실행을하면 딱 한번만 출력이돼요. 쓰레드를 계속 돌리는 법좀 가르쳐 주세요.
1 답변
-
handler = new Handler(); final Runnable r = new Runnable() { public void run() { tv.append("Hello World"); handler.postDelayed(this, 1000); } }; handler.postDelayed(r, 1000);
약간 수정해봤습니다. 아니면 보통의 쓰레드처럼 하는 방법은
Thread thread = new Thread() { @Override public void run() { try { while(true) { sleep(1000); handler.post(this); } } catch (InterruptedException e) { e.printStackTrace(); } } }; thread.start();
이런식으로 하시면됩니다.
댓글 입력