안드로이드2013. 2. 14. 13:43

글을 올린 블로거를 생각해서 광고 한번만 클릭해주시면 감사하겠습니다

우선 카운트다운타이머다

전역변수로 설정해주고

CountDownTimer cdTimer = null;

사용할 부분에 넣어주면 된다 아래는 3초동안 1초마다 한번씩 실행한다는 뜻이다

cdTimer = new CountDownTimer(3000, 1000) {

            public void onTick(long millisUntilFinished) {

//이 부분에 반복적으로 실행해줄 코드를 넣어주면 된다

             }

            public void onFinish() {

//이 부분은 3초가 지나고 끝낫을때 이부분이 실행되게 된다

            }

        };

    cdTimer.start();


다음은 타이머 인데 TimerTask를 이용하는 방법과 핸들러를 이용하는 두가지 방법이 있다

TimerTask를 사용하는 방법은 다음과 같다

TimerTask timerTask = new TimerTask() {

public void run() {

//이부분에 실행해줄 코드를 넣어주면 된다

}

};

Timer timer = new Timer();

timer.schedule(timerTask,1000);

이렇게 해주면 1초 뒤에 빨간색으로 표시된 곳의 코드가 실행되게 된다

반복되게 해주고 싶다면

timer.schedule(timerTask,1000,2000);

이렇게 해주면 1초 뒤에 2초마다 계속 반복되게 된다


두번째 방법은 핸들러를 이용하는 방법이다

전역변수로 

private Handler mHandler;

private Runnable mRunnable;

선언해준 다음에


mRunnable = new Runnable() {

            @Override

            public void run() {

               //이 부분에 실행해줄 코드를 넣어주면 된다

            }

        };

         

        mHandler = new Handler();

        mHandler.postDelayed(mRunnable, 1000);

1초뒤에 코드가 실행된다


첫번째 타이머가 더 간단하지만 핸들러를 사용한 계기가

UI변경하는 코드가 있었는데 TimerTask를 쓸때는 자꾸 에러가 나는 것이었다

이유는 간단했다 UI변경을 위해서는 핸들러를 이용해야된다는 것이었다

Posted by 퍼플카우D