flutter_프로젝트/1_타이머_만들기
2. 타이머 만들기 - 시간 가게 하기
studyapps
2024. 7. 15. 23:33
flutter 에서 시간경과에 따른 무엇가를 하기 위해서는 dart:async 임포트가 필요하다
import 'dart:async';
1초 마다 시간을 가게 한다면 1초 마다 작동되는 Timer 를 만들어 주면 된다.
함수를 하나 만들어서 매 1초 간격으로 tick 을 (몇번 갔는지?) 출력하게 한다
void start_btn() {
Timer.periodic(const Duration(seconds: 1), (Timer t) {
print(t.tick);
// 1초 마다 타이머 t의 tick을 출력한다
});
}
함수 이름을 start_btn으로 만들고 이 함수를 버튼에 연결한다.
ElevatedButton(
onPressed: start_btn,
child: const Text('Start'),
)
이 상태에서 앱을 실행하면 "디버그 콘솔" 창에서 시간이 가는 것이 보인다. (tick이 출력된다)
바뀐 것은 없지만 함수를 어디 넣어야 하는지 헷갈리수 있음으로 (나만?) 함수까지 코드는 아래와 같다.
class _stopWatchState extends State<stopWatch> {
void start_btn() {
Timer.periodic(const Duration(seconds: 1), (Timer t) {
print(t.tick);
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(