定時(shí)器Timer

self.codeBtn.addTarget(self, action: #selector(createTimer), for: .touchUpInside)

    func createTimer() {
        self.codeBtn.setTitle("5", for: .normal)
        self.codeBtn.isUserInteractionEnabled = false
        
        self.timer = Timer.scheduledTimer(timeInterval: 1.0, target: self, selector: #selector(timerReduces), userInfo: nil, repeats: true)
        self.timer?.fire()
    }
    func timerReduces() {
        self.startTime -= 1
        let time = "\(self.startTime)"
        self.codeBtn.setTitle(time, for: .normal)
        print(self.startTime)
//        let newStr = NSString(string: time)
//        let num = newStr.intValue
        if self.startTime == 0 {
            self.codeBtn.isUserInteractionEnabled = true
            self.codeBtn.setTitle("重新獲取驗(yàn)證碼", for: .normal)
            self.timer?.invalidate()
            self.startTime = 5
        }
    }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 問(wèn)題原因: 一般定時(shí)器timer都會(huì)被以默認(rèn)模式default添加到主線(xiàn)程的runloop中,當(dāng)滑動(dòng)界面時(shí),run...
    SunnyLeong閱讀 1,514評(píng)論 1 17
  • Timer是一種定時(shí)器工具,用來(lái)在一個(gè)后臺(tái)線(xiàn)程計(jì)劃執(zhí)行指定任務(wù)。它可以計(jì)劃執(zhí)行一個(gè)任務(wù)一次或反復(fù)多次。TimerT...
    AiPuff閱讀 11,933評(píng)論 0 2
  • 本文旨在總結(jié)項(xiàng)目中因使用各類(lèi)定時(shí)器而踩到的坑,并附上經(jīng)驗(yàn)總結(jié)。 NSTimer NSTimer是最常用的定時(shí)器,坑...
    QihuaZhou閱讀 3,305評(píng)論 0 3
  • Timer 定時(shí)器相信都不會(huì)陌生,之所以拿它來(lái)做源碼分析,是發(fā)現(xiàn)整個(gè)控制流程可以體現(xiàn)很多有意思的東西。 在業(yè)務(wù)開(kāi)發(fā)...
    石先閱讀 6,409評(píng)論 2 13
  • 像我這樣獨(dú)行的人, 在街頭,在凌晨,在弄巷, 一杯酒來(lái),一根煙, 抬頭看天,低頭看地,還有我自己。 39碼的鞋,2...
    英姿颯爽俏公子閱讀 326評(píng)論 5 5