์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- ์น๋์๋ณด๋ ์ ์
- ํ๋ค์ค
- Streamlit๊ธฐ๋ณธ
- ์๋ฐํ๋ก๊ทธ๋๋ฐ
- ํ๋ค์ค๊ณต๋ถ
- streamlit
- ํ์ด์ฌ
- ๋ฐ์ดํฐ๋ฒ ์ด์ค
- RESTful API
- ์๋ฐ
- JavaScript
- serverless
- ์๋ฐ์คํฌ๋ฆฝํธ
- ์คํธ๋ฆผ๋ฆฟ ๊ธฐ๋ณธ
- Pandas
- ์น๋์๋ณด๋ ๊ธฐ์ด
- db
- Matplotlib ๊ธฐ์ด
- java
- ์๋ฐ์คํฌ๋ฆฝํธ ๊ณต๋ถ
- MySQL
- ์๋ฐ๊ธฐ์ด
- ์๋ฐ๊ณต๋ถ
- ์๋๋ก์ด๋ ์ฑ ๊ฐ๋ฐ
- Streamlit๊ธฐ์ด
- ์คํธ๋ฆผ๋ฆฟ
- ์๋๋ก์ด๋ ์คํ๋์ค
- ํ์ด์ฌ๊ณต๋ถ
- Android
- ์๋ฐ์ด๋ณด
- Today
- Total
ruriruriya
[Android] ์๋๋ก์ด๋ - CountDownTimer ์ฌ์ฉ๋ฐฉ๋ฒ ๋ณธ๋ฌธ
[Android] ์๋๋ก์ด๋ - CountDownTimer ์ฌ์ฉ๋ฐฉ๋ฒ
๋ฃจ๋ฆฌ์ผใ 2023. 12. 24. 10:08
์๋๋ก์ด๋์์ CountDownTimer๋ฅผ ์ฌ์ฉํ์ฌ ํน์ ์๊ฐ ๋์ ์ผ์ ํ ๊ฐ๊ฒฉ์ผ๋ก ์์ ์ ์ํํ๊ฑฐ๋ ํ์ด๋จธ๋ฅผ ํ์ํ ์ ์๋ค.
1. CountDownTimer ๊ฐ์ฒด ์์ฑ
CountDownTimer ํด๋์ค๋ฅผ ์์ํ๊ฑฐ๋ ๊ฐ์ฒด๋ฅผ ๋ง๋ ๋ค.
onTick ๋ฉ์๋๋ ์ผ์ ๊ฐ๊ฒฉ์ผ๋ก ์คํ๋ ์ฝ๋๋ฅผ ์ ์ํ๊ณ ,
onFinish ๋ฉ์๋๋ ํ์ด๋จธ๊ฐ ์๋ฃ๋์์ ๋ ์คํ๋ ์ฝ๋๋ฅผ ์ ์ํ๋ค.
2. start ๋ฉ์๋ ํธ์ถ
CountDownTimer ๊ฐ์ฒด์ start() ๋ฉ์๋๋ฅผ ํธ์ถํ์ฌ ํ์ด๋จธ๋ฅผ ์์ํ๋ค.
new CountDownTimer(60000, 1000) { // 60์ด(60000 ๋ฐ๋ฆฌ์ด), 1์ด๋ง๋ค ๊ฐฑ์ (1000 ๋ฐ๋ฆฌ์ด)
public void onTick(long millisUntilFinished) {
// ๋งค ์ด๋ง๋ค ํธ์ถ๋๋ ๋ฉ์๋
// millisUntilFinished ํ๋ผ๋ฏธํฐ๋ ๋จ์ ์๊ฐ์ ๋ฐ๋ฆฌ์ด ๋จ์๋ก ์ ๋ฌํฉ๋๋ค.
long secondsRemaining = millisUntilFinished / 1000;
// ๋จ์ ์๊ฐ์ UI์ ํ์ํ๊ฑฐ๋ ์์
์ ์ํํ ์ ์์ต๋๋ค.
}
public void onFinish() {
// ํ์ด๋จธ๊ฐ ์ข
๋ฃ๋์์ ๋ ํธ์ถ๋๋ ๋ฉ์๋
// ์ฌ๊ธฐ์ ์ํ๋ ์์
์ ์ํํฉ๋๋ค.
}
}.start(); // CountDownTimer ์์
์ ์ฝ๋์์ CountDownTimer ๊ฐ์ฒด๋ฅผ ์์ฑํ๊ณ ,
60์ด ๋์(60000 ๋ฐ๋ฆฌ์ด) ๋งค ์ด๋ง๋ค(1000 ๋ฐ๋ฆฌ์ด) onTick์ด ํธ์ถ๋๋ค.
onTick ๋ฉ์๋ ๋ด์์๋ ๋จ์ ์๊ฐ์ ํ์ธํ๊ฑฐ๋ UI์ ์
๋ฐ์ดํธํ๋ ๋ฑ์ ์์
์ ์ํํ ์ ์๋ค.
onFinish ๋ฉ์๋๋ ํ์ด๋จธ๊ฐ ์ข
๋ฃ๋์์ ๋ ํธ์ถ๋๋ค.