반응형
공감 및 댓글은 포스팅 하는데 아주아주 큰 힘이 됩니다!! 포스팅 내용이 찾아주신 분들께 도움이 되길 바라며 더 깔끔하고 좋은 포스팅을 만들어 나가겠습니다^^
|
오랜만에 포스팅을 합니다.
안드로이드 new Handler.postDelayed()로
호출된 Runnable 해제하는 법에 대해서 포스팅합니다.
new Handler.postDelayed()는
어떠한 작업을 일정시간이 흐른 후에 실행할 때 사용합니다.
postDelayed(Runnable r, long delayMillis)
두 가지 인자가 필요합니다.
Runnable 과 지연될 시간을 밀리초로 넣어주시면 됩니다.
먼저 작업을 Runnable에 선언해주세요.
class DE_AT_Runnable implements Runnable {
@Override
public void run() {
//원하는 작업
}
}
그리고 Handler를 필드에 선언해주고,
Handler mHandler;
뭐 아래 같은 식으로 postDelayed()를 호출하겠죠?
de_at_runnable = new DE_AT_Runnable();
mHandler.postDelayed(de_at_runnable, 3000);
mHanlder 는 onCreate에서
객체생성 해주었습니다.
mHandler = new Handler();
그리고 이제 특정 상황에서 3000이라는 시간이 지나기 전에
실행을 취소하고 싶다면?
if(mHandler != null) {
mHandler.removeCallbacks(de_at_runnable);
}
Handler에서 가지고 있는 removeCallbacks(Runnable r)을 호출해주면 됩니다.
어렵지 않죠?
이상입니다. 감사합니다.
반응형
'안드로이드' 카테고리의 다른 글
안드로이드 easy mode 스도쿠 제작 - 1.문제 만들기 (0) | 2019.05.15 |
---|---|
안드로이드의 Listener에서 setListener 와 addListener 의 차이 (2) | 2019.05.14 |
안드로이드 dp를 px로 변환시키기. convert from dp to px (0) | 2019.05.02 |
안드로이드 스튜디오 3.4 업데이트 New Resource Manager (0) | 2019.04.18 |
안드로이드 ProgressBar 색상 변경방법 how to change progress bar's color in android (0) | 2019.04.15 |