우선 카운트다운타이머다
전역변수로 설정해주고
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변경을 위해서는 핸들러를 이용해야된다는 것이었다
'안드로이드' 카테고리의 다른 글
[android]mac에서 android ndk 셋팅 방법 (0) | 2013.02.20 |
---|---|
[android] javaCV 셋팅 방법 (0) | 2013.02.15 |
[android] 녹음하고 재생하기 (0) | 2013.02.14 |
[android] BitmapFactory 쓰지않고 이미지 가져오는 방법 (0) | 2013.02.08 |
[android] 화면 꺼짐 방지 (0) | 2013.02.05 |