반응형
60초 카운트다운(CountDown)으로 동작하는 타이머 사용 예제입니다.
예제 코드
//타이머 변수 선언
var timer : Timer?
//타이머에 사용할 번호값
var timerNum: Int = 0
//타이머 시작
public func startTimer() {
//기존에 타이머 동작중이면 중지 처리
if timer != nil && timer!.isValid {
timer!.invalidate()
}
//타이머 사용값 초기화
timerNum = 60
//1초 간격 타이머 시작
timer = Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector(timerCallback), userInfo: nil, repeats: true)
}
//타이머 동작 func
@objc func timerCallback() {
//60초 ~ 1초 까지 timeBtn의 타이틀 변경
self.timeBtn.setTitle("\(timerNum)초", for: .normal)
//timerNum에 따른 처리...
if(timerNum > 45) {
//...
} else if(timerNum > 30) {
//...
} else if(timerNum > 15) {
//...
} else {
//...
}
//timerNum이 0이면(60초 경과) 타이머 종료
if(timerNum == 0) {
timer?.invalidate()
timer = nil
//타이머 종료 후 처리...
}
//timerNum -1 감소시키기
timerNum-=1
}
반응형
'아이폰' 카테고리의 다른 글
Swift 쿠키(cookie) 동기화(URLRequest, WKWebView) (0) | 2021.11.20 |
---|---|
Swift 카메라 플래시 On/Off (0) | 2021.11.20 |
Swift UIImageView + URL이미지 (0) | 2021.11.20 |
Swift 키보드 Show/Hide 이벤트, 화면 밖 터치로 내리기 (0) | 2021.11.20 |
Swift Outline UILabel (0) | 2021.11.20 |
최근댓글