//
|
// UIButton+Exception.swift
|
// BrokerDriver
|
//
|
// Created by 无故事王国 on 2023/5/6.
|
//
|
|
import Foundation
|
|
extension UIButton{
|
public func openCountDown(_ t:Int = 59,defultTitle:String = "Obtain code"){
|
var time = t //倒计时时间
|
let queue = DispatchQueue.global()
|
let timer = DispatchSource.makeTimerSource(flags: [], queue: queue)
|
timer.schedule(wallDeadline: DispatchWallTime.now(), repeating: .seconds(1));
|
timer.setEventHandler(handler: {
|
if time <= 0 {
|
timer.cancel()
|
DispatchQueue.main.async(execute: {
|
self.setTitle(defultTitle, for: .normal)
|
self.isUserInteractionEnabled = true
|
});
|
}else {
|
DispatchQueue.main.async(execute: {
|
self.setTitle("\(time)s", for: .normal)
|
self.isUserInteractionEnabled = false
|
});
|
}
|
time -= 1
|
});
|
timer.resume()
|
}
|
}
|