UIButton - 避免多次重复点击

import Foundation
import UIKit

extension UIButton {
    
    
    func antiMultiplyTouch(delay: TimeInterval, closure: @escaping () -> Void) {
        self.isUserInteractionEnabled = false
        
        DispatchQueue.main.asyncAfter(deadline: .now() + delay) {
            self.isUserInteractionEnabled = true
            closure()
        }
    }
}

使用时


@objc func buttonClick(button: UIButton) -> Void {
        print("点击了")
        button.antiMultiplyTouch(delay: 2) {
            print("2S后可以再次点击了")
        }
    }

更多方案:
http://www.cocoachina.com/ios/20171108/21086.html

你可能感兴趣的:(UIButton - 避免多次重复点击)