일정한 주기로 반복적인 작업을 할때는 쓰레드를 쓰는것이 원칙적이나 좀더 간단하게 구현하려면 타이머를 사용한다.

mHandler.sendEmptyMessage(0); 

 타이머를 처음시작하도록 함

 

Handler mHandler = new Handler(){

    public void handleMessage(Message msg){

    times++;

    mText.setText("time = " + times);

    mHandler.sendEmptyMessageDelayed(0, 1000);       // 타이머에따라 위의 과정을 반복함  cf) 1000=1초

    };

 };

타이머 처리를 위해 Handler클래스를 사용한다. 핸들러는 스레드간의 메세지 통신을 위한 장치로 sendMessage메서드나 유사 메서드로 특정 핸드러에게 메세지를 보낼수있다. sendEmptyMessageDelayed는 1000(1초)시간의 딜레리를 가지고 지속적으로 핸들러는 호출하게됨으로써 1초에 숫자가 1씩증가되게 만들어 타이머의 효과를 만들어주었다. 

- Hanlder 작동 순서 -



 
Posted by No names
,