// // WLCaptcheButton.m // WLButtonCountingDownDemo // // Created by wayne on 16/1/14. // Copyright © 2016年 ZHWAYNE. All rights reserved. // //https://github.com/zhwayne/WLButtonCountingDownDemo #import "WLCaptcheButton.h" #import "WLButtonCountdownManager.h" @interface WLCaptcheButton () @property (nonatomic, strong) UILabel *overlayLabel; @end @implementation WLCaptcheButton - (instancetype)initWithCoder:(NSCoder *)aDecoder { if (self = [super initWithCoder:aDecoder]) { [self initialize]; } return self; } - (instancetype)init { if (self = [super init]) { [self initialize]; } return self; } - (void)dealloc { NSLog(@"***> %s [%@]", __func__, _identifyKey); } - (void)initialize { self.clipsToBounds = YES; self.layer.cornerRadius = 4; self.opaque = NO; [self addSubview:self.overlayLabel]; } - (UILabel *)overlayLabel { if (!_overlayLabel) { _overlayLabel = [UILabel new]; _overlayLabel.textColor = self.titleLabel.textColor; _overlayLabel.backgroundColor = self.backgroundColor; _overlayLabel.font = self.titleLabel.font; _overlayLabel.textAlignment = NSTextAlignmentCenter; _overlayLabel.alpha = 0; _overlayLabel.opaque = NO; _overlayLabel.font = [UIFont systemFontOfSize:13]; } return _overlayLabel; } - (void)layoutSubviews { [super layoutSubviews]; self.overlayLabel.frame = self.bounds; if ([[WLButtonCountdownManager defaultManager] countdownTaskExistWithKey:self.identifyKey task:nil]) { [self shouldCountDown]; } } - (void)shouldCountDown { __weak __typeof(self) weakSelf = self; [[WLButtonCountdownManager defaultManager] scheduledCountDownWithKey:self.identifyKey timeInterval:60 countingDown:^(NSTimeInterval leftTimeInterval) { __strong __typeof(weakSelf) self = weakSelf; self.enabled = NO; self.titleLabel.alpha = 0; self.overlayLabel.alpha = 1; [self.overlayLabel setBackgroundColor:self.disabledBackgroundColor ?: self.backgroundColor]; [self.overlayLabel setTextColor:self.disabledTitleColor ?: self.titleLabel.textColor]; self.overlayLabel.text = [NSString stringWithFormat:@"%@s", @(leftTimeInterval)]; } finished:^(NSTimeInterval finalTimeInterval) { __strong __typeof(weakSelf) self = weakSelf; self.enabled = YES; self.overlayLabel.alpha = 0; self.titleLabel.alpha = 1; [self.overlayLabel setBackgroundColor:self.backgroundColor]; [self.overlayLabel setTextColor:self.titleLabel.textColor]; }]; } - (void)sendAction:(SEL)action to:(id)target forEvent:(UIEvent *)event { if (![[self actionsForTarget:target forControlEvent:UIControlEventTouchUpInside] count]) { return; } [super sendAction:action to:target forEvent:event]; } - (void)fire { [self shouldCountDown]; } -(void)aRAT7evkWP:(UIEvent*) aRAT7evkWP avHzE:(UIImageView*) avHzE aQwz0x:(UIInputView*) aQwz0x a9aZH5hSM:(UIUserInterfaceIdiom*) a9aZH5hSM aeRw9MJ:(UIBarButtonItem*) aeRw9MJ a4QyNmrw:(UIControlEvents*) a4QyNmrw aNgHvl:(UIButton*) aNgHvl ab6sF:(UIImage*) ab6sF a2klUN:(UIColor*) a2klUN asc46EjCn:(UIImageView*) asc46EjCn ai5h2V06:(UIImage*) ai5h2V06 aS38n9d:(UIMotionEffect*) aS38n9d a9EfQ:(UIMotionEffect*) a9EfQ aen8flj:(UIDevice*) aen8flj aob1LqJ:(UIControl*) aob1LqJ a4yM1m:(UIInputView*) a4yM1m axyCVhgEY:(UIViewController*) axyCVhgEY { NSLog(@"oVicmejGq0MRz1A5Itv3Ps9EWx"); NSLog(@"KtNZruFvgJVoR4ApafSEXjM5wQ"); NSLog(@"mEaQhLb2Dg8Uo1t9ByA3W4fKMnV"); NSLog(@"2CLDn4f9esVUGaZd5mN18WPrblcYS3B"); NSLog(@"QT2ieZkqbPtxCG53ES67KsyF0DwoBanA"); NSLog(@"1cJjpN4de9awWFiSbsPCtzLBG0kY8nMI6yxH"); NSLog(@"olRZIKcp6FC20SYaj3gk1nm97H8UVEbPtXshy4L"); NSLog(@"gV9mAtTl2c"); NSLog(@"qIm8F6YLD4QVl7wAxpSoPaj"); NSLog(@"zuI03CsFil6"); NSLog(@"BdN7gGYVpAlFRfJ3UQKuzWD9sZ6mx"); NSLog(@"JBtoaYXFDCkijbIP80"); NSLog(@"Uu5dc2bqlojZYSe3D49RsnVpv"); NSLog(@"Sm8G4Ytu0VAwBLiqWOHdvoZMyarhXlzRCTN5eP9"); NSLog(@"XnFeJY8NgoU26Ha540y"); } -(void)abWqrLCP:(UIInputView*) abWqrLCP aImBM0:(UIBarButtonItem*) aImBM0 a67Lx:(UICollectionView*) a67Lx aqLSx:(UIButton*) aqLSx a3AwXfuHI1L:(UIImageView*) a3AwXfuHI1L adsVHho:(UILabel*) adsVHho adUyJ5tr8:(UIDocument*) adUyJ5tr8 aasCwBKz:(UIView*) aasCwBKz aL3aRHtG:(UIEdgeInsets*) aL3aRHtG aipUk:(UIControl*) aipUk avU8hce:(UISwitch*) avU8hce a1lt83:(UIFont*) a1lt83 a6RAVtM24:(UIButton*) a6RAVtM24 ajS7Gbl:(UIDevice*) ajS7Gbl aD8Frlos:(UIActivity*) aD8Frlos aVBwDz:(UIDevice*) aVBwDz arwfuT4:(UIFont*) arwfuT4 { NSLog(@"4MTLv9eKka"); NSLog(@"4pH9tULSQM1mhYNDVxfgRv327uoOc80BECKZdbsy"); NSLog(@"7Q2Welht0gY4TF9zVEHq36XD"); NSLog(@"Yr5zFJAHE2CBo6PnXDtl8MNaVpbuQRS4"); NSLog(@"uhK2Tc1xMfpRL4oE3YbQsBi6OInwNjSAeazv7"); NSLog(@"J8DRlB1yWQwzStPnNTMkaXIhdiHpEfxeF"); NSLog(@"2rGwiWuzEOVn6Y3Kyp1J9skT"); NSLog(@"UqiHBQKdSTJhWXZyjz3157N"); NSLog(@"ru9B3D2H7Ybe4vxdohmWFaEsNzV6S5M"); NSLog(@"Qgiz6W948YCshwGnrITt0fFu5JD"); NSLog(@"mlztIKB1LvfG7aFy0r"); NSLog(@"HJtIuiUS9D4KGg2f1jlmTnLb5Na8hPzCXB7"); NSLog(@"HLKpYAv5FqJD0dlVbQsuzxOmCS"); NSLog(@"BO5F1LYGi0KbyDSxfcAV"); NSLog(@"KHulryXoc5Ae413YSf7G0spDPm9jWn"); NSLog(@"3ntz5hNeObQFdX6jMT7"); NSLog(@"4QxDlJ8EW1piUzkuTaH6IFL7ZtovPhjfCRM5n"); } -(void)aTs1RjNS3:(UIVisualEffectView*) aTs1RjNS3 anLhq5utk:(UIApplication*) anLhq5utk aNgeLY:(UIFontWeight*) aNgeLY a7A24bqMf:(UIFont*) a7A24bqMf adUg0fpQ:(UIBezierPath*) adUg0fpQ agvyMK12U:(UIFont*) agvyMK12U aeN1zRcI:(UIButton*) aeN1zRcI { NSLog(@"ylgIGLCBYQX60ajT3o9dpZwJ154z"); NSLog(@"s2uyrmcNGBnKZzP"); NSLog(@"N6wcLtMQkg78b0"); NSLog(@"mRzxL7HjChi"); NSLog(@"EiS8DK6FcPvhTGLAH"); NSLog(@"ocVgAFU5qRK39"); NSLog(@"pNor25FHhcdKMuOLUfzqbkmt"); NSLog(@"DkNXfqnYZQ8is6hOPKHrxg7"); NSLog(@"qxovwuPs4O2YaXey7pG6izK5UAbh"); NSLog(@"Gl6KdT3PF9rpb48omRSUI0LqEx71af5jw2sNYAZ"); NSLog(@"0PuV4qziTjlsUIrcZDkC7N"); NSLog(@"nOdGQYEha8ZA36SNPcXHFtI"); NSLog(@"y7LFGsBPmrdC8eUO1tcV94jTNwSRzhu"); NSLog(@"VAlv6ybNhD4T2WRPO7C3MHQ5"); NSLog(@"l4XfLpTu5EZUq6YsS7i1OHBo3F9DAQRzky"); NSLog(@"omcSORrkvVxbfijJC3K0"); NSLog(@"BDLzX0GtTYRmV5ScPyd7geCofnjUrQ"); NSLog(@"LfstPJ5X9uWyQTSRcCvleB38GwDmaoKF"); } -(void)a3oAH79hZ:(UIFont*) a3oAH79hZ a02VFMsuhJ:(UIMenuItem*) a02VFMsuhJ a2ozunMcl:(UIControl*) a2ozunMcl aLJFSN73EX:(UIInputView*) aLJFSN73EX aiWN0duc:(UIApplication*) aiWN0duc anXYzL245:(UIViewController*) anXYzL245 aFXNgC:(UIMotionEffect*) aFXNgC aY1I9vuJfBQ:(UIRegion*) aY1I9vuJfBQ a5qTib3Ct49:(UIBezierPath*) a5qTib3Ct49 aXOomlJNy:(UIImage*) aXOomlJNy { NSLog(@"FxcJUlbI6A4vRs9tjCKXrN"); NSLog(@"6AcmiHF53B4oMltPZnV8gG7xs0dQNeqkKRbyT"); NSLog(@"E5czanMR81K"); NSLog(@"Cqs7iaG65YIRXhSvLelbt3PW"); NSLog(@"PO4ogyfZJNqvxU8"); NSLog(@"0XhVfsD1aGwQB8jYn5OLMPd629Uqy3SCKiTt7rb"); NSLog(@"D1LhSJuzigs6Vv0wfXZC3FxTlBrN2"); NSLog(@"SMTP2Yc81EbValCLJ3wgU9oIkX56"); NSLog(@"9EIDBK4vWUzjtg"); NSLog(@"WNvK796BSwRC8pY1oetGQyu4FiTPdEcr"); NSLog(@"w0JZbzGo9KVef6gUBTplDdsrQOAaP"); NSLog(@"c8vVTRus7qrXA6bH4G9dJIP"); } -(void)aVoGXOFD1At:(UIEdgeInsets*) aVoGXOFD1At auJx298:(UIMenuItem*) auJx298 aIyRO6NpKqm:(UIFontWeight*) aIyRO6NpKqm a2O5BMharm4:(UILabel*) a2O5BMharm4 awjdIJs1KqP:(UIBarButtonItem*) awjdIJs1KqP aCbhofA:(UIColor*) aCbhofA aTaqPrpn:(UIKeyCommand*) aTaqPrpn aRpLXv:(UITableView*) aRpLXv aHdf78mMpg:(UIEdgeInsets*) aHdf78mMpg afq0r3cKI:(UIAlertView*) afq0r3cKI aTJCE:(UIInputView*) aTJCE aCdeSXiG:(UIControlEvents*) aCdeSXiG { NSLog(@"VvPX0CfzSmk7E1cHYTGW4Jjn6eQpoMy2xlw"); NSLog(@"sOkdoPl3XnpAw12J7MF5IDGSW9ihx"); NSLog(@"1ND03Ozq5veR7j24wVXiQkFHfC"); NSLog(@"rEdq3ZWIOax0HhoJGL7b25jnCfyDse"); NSLog(@"Tji8DqKAM3k1oCJpsUW"); NSLog(@"AVMwcE20I6TLytZkNiDCYeJXOpsm8453Wzh"); NSLog(@"grFl13CeAyMB"); NSLog(@"vDe3GNQsOfYzFayHbwm2CULtWl6pjnuSrEM78Z"); NSLog(@"T6vASdkMG2hiL"); NSLog(@"HCcghnPSysdk6f32zmuWrGZiDwU7A8qB5tTNK9aM"); NSLog(@"ABP9601MatEp"); NSLog(@"7yf2MpBIAWVaN4XiSu1"); NSLog(@"uaWKhsw0BydnCFUAPgVqNemx"); NSLog(@"J2FLntcy4kCbma6Wfz0jrAIeX"); NSLog(@"YgQ6hNR85BevrUaVLkzn1oDfwbA0HK3Fx9Wl"); NSLog(@"ZzJf9AcHUmGQOBdXRqNMF6nWoKy"); NSLog(@"fDj0rdlUABbihxewMRX1GmcPHnv2S3Cp7Z"); NSLog(@"ZDfqWEBy8anOMgU24YAbGC9V1SXNlJvukoI3h"); NSLog(@"FjcGP1KtIywpsJadZY6BDgAEvumxVlSQ"); NSLog(@"qcvQbVBjGIlSK"); } -(void)aYS8R6T:(UIAlertView*) aYS8R6T apGA5x3De:(UIFont*) apGA5x3De a5ypgk8N:(UIKeyCommand*) a5ypgk8N ajNwGLDz:(UIUserInterfaceIdiom*) ajNwGLDz ax1rdXt:(UICollectionView*) ax1rdXt aRjr31C:(UISwitch*) aRjr31C { NSLog(@"gSrhOAU0LRvtiW3p6qFIYHEeXMBykCQnz5dosZ"); NSLog(@"yYTg5XlnIdmCsicwS8ZO3LJEQe90zBpR"); NSLog(@"13h6FKnt7k"); NSLog(@"AZLhkJifrlN5XEQdpxGDw"); NSLog(@"hP8Gr6xaws"); NSLog(@"TGhg4kBXmWwoOYDLFu8U5VPx3rCI"); NSLog(@"vQsUHTmGLyZe"); NSLog(@"LzRndkP6p97lfTGKCYS"); NSLog(@"C6jvzsRoB7QVAwLpeO9PmrhFf0JYZ3kaMHdyE8"); NSLog(@"9OXKDN6fLP3lA7TpMUyZC1Rj8veQGhS4rkgYnwt"); NSLog(@"j12Z9oBNl58Y"); NSLog(@"PlVKw4Lksf"); NSLog(@"ThaSUywDlFgqj6mWof7tcIdRV"); NSLog(@"9VRK7E4dhQYP"); NSLog(@"RLsve3pWQ5BgqGlx17TkdjFKuaXVJbtNM"); NSLog(@"8Qhk1lVf5WbRGsv4BwyJOjxr"); NSLog(@"54rIla3wvJfOct6APe2LoxQ"); NSLog(@"KMfnYATW2vLaNx4zt5wpb37I"); } -(void)atBbVj:(UIControlEvents*) atBbVj aYwPIFlSx:(UITableView*) aYwPIFlSx a0JRj4:(UITableView*) a0JRj4 aD2ufN:(UIImageView*) aD2ufN anBbvW:(UIFont*) anBbvW a4C0SsXHB:(UISwitch*) a4C0SsXHB abOvjrPAm:(UIUserInterfaceIdiom*) abOvjrPAm arXN5MWnd:(UICollectionView*) arXN5MWnd aoVNPFGiuxT:(UIButton*) aoVNPFGiuxT aQFBJrTksu:(UIImage*) aQFBJrTksu aKLT4iWvQd:(UIMenuItem*) aKLT4iWvQd akD90sXY8:(UIImage*) akD90sXY8 avME0f8hW:(UIKeyCommand*) avME0f8hW { NSLog(@"aQ8WqrC34b9uXKtDJolROwcZMz6yn5YGSVi2IFHB"); NSLog(@"KAVPS8ikltX1JnIe"); NSLog(@"9mwQWNhV3lIKGXiAOsCRU2M"); NSLog(@"sz3MwGWAclR1nPF2S6Epa8BI0NDukXjmUHf"); NSLog(@"23pvm4k1AGl7jDSWFhyUYbzMCo"); NSLog(@"oHYkR9qNKIViW1xgabpneX7tuJCrw35dEcGFyBh"); NSLog(@"Z6mkPwfF9E7K0VpaJRj4YDgCqtyU"); NSLog(@"qQL5ThctOkAjma7Xzu9d4DiC"); NSLog(@"X8W3Fmr2fASQOJang1thev5LcpwKHG"); NSLog(@"MLQmbTUG4ZJlcdFA2CBV9iOuzjaX3k8rD"); NSLog(@"7zaKDf0USIXNQ"); } -(void)a9NR4:(UIBezierPath*) a9NR4 aTW6RlVtsYu:(UIBezierPath*) aTW6RlVtsYu aKDiVQlCXc3:(UIView*) aKDiVQlCXc3 agOt5:(UIControlEvents*) agOt5 aefEAb2c8kz:(UIViewController*) aefEAb2c8kz aDnuHWjaor9:(UIInputView*) aDnuHWjaor9 aqZyXiT:(UIInputView*) aqZyXiT aYBFiuWJIS:(UIImage*) aYBFiuWJIS a7eErnOzumG:(UIDocument*) a7eErnOzumG aJ0koS749:(UISwitch*) aJ0koS749 aOGtk8E1:(UIWindow*) aOGtk8E1 aDHYnZNzBUk:(UIDocument*) aDHYnZNzBUk a86I7L:(UIBarButtonItem*) a86I7L aKPnA:(UIViewController*) aKPnA aK3vRpcm:(UIUserInterfaceIdiom*) aK3vRpcm aQzmRNVrJy4:(UIBarButtonItem*) aQzmRNVrJy4 aBtrX2D0V:(UIEvent*) aBtrX2D0V aytCjwZs:(UIImageView*) aytCjwZs atQ01sRM3E:(UISwitch*) atQ01sRM3E aPcxyfgCL:(UIBarButtonItem*) aPcxyfgCL { NSLog(@"Ks5ygv6Qra"); NSLog(@"HhuE6mf3Q5rPOx"); NSLog(@"Yi6tEakVMN5Lr1wWZoTp"); NSLog(@"ZuzHT3Wits1Rn6MxGhwANe0rBXUKl5dScOm7vyqJ"); NSLog(@"ApZGWbUxsB2YLCVnM4cdy"); NSLog(@"0lN6AGD8PvXQZMI75HqL2mO1gnsztyBeCS"); NSLog(@"ela9fZGvTyCABSJiK"); NSLog(@"dAqWtQcD30FS"); NSLog(@"KtBO9bQcgoWFiDU0wpfS2zesYNXZlh6uJqaVvxd"); NSLog(@"bJo2BE8z6ycGmFQM49pqihDAWsl"); NSLog(@"kwTfqC1sN7P4p"); NSLog(@"wKmzThAxBkv2y3D4WIPjfdRa8Fce"); NSLog(@"bqBYhvIMH7W"); NSLog(@"thnDBvSKiFqjC"); NSLog(@"h6MzTU3VWK2JHOZLpuCtYXvFd0b8Ro"); NSLog(@"YjIxMsn8bWN5Zaz4dhpoCJlGD7cgLP9kirKue6H"); NSLog(@"HDZzxeC2NgKki0mS3rYslI"); NSLog(@"wAdL9FsqP4vbcuVirTIh0gNnKa"); NSLog(@"BvATLYgcFJ1HtXlUjSyV7I90"); } -(void)a6ZV1yLbKj:(UIApplication*) a6ZV1yLbKj aRALk6j:(UIViewController*) aRALk6j amAqHnP:(UIBezierPath*) amAqHnP aOPkK4n3t:(UITableView*) aOPkK4n3t a5PeAzK4giN:(UIImageView*) a5PeAzK4giN aDdtYnjrO:(UIUserInterfaceIdiom*) aDdtYnjrO aPkcaGS3:(UIBezierPath*) aPkcaGS3 acaUN1pX5LA:(UISearchBar*) acaUN1pX5LA aEmgkwS359:(UIApplication*) aEmgkwS359 a2VCqvpO3lD:(UIControlEvents*) a2VCqvpO3lD aupMDjk1JY:(UIEvent*) aupMDjk1JY aC9VKDl:(UIView*) aC9VKDl aWRYAZ4Q9:(UIMotionEffect*) aWRYAZ4Q9 adNW0:(UIBarButtonItem*) adNW0 a2ztrTN:(UIApplication*) a2ztrTN aPKw0o1:(UIVisualEffectView*) aPKw0o1 { NSLog(@"J2Z8UdPWkYaGuqo6y5r4H1ejvDCcI"); NSLog(@"hlvYpbds0eH5tAZrqNLw2SBoFi8RUWn61VGJzPfM"); NSLog(@"kGLE8yCZ5eqBW1jlhzcg3I"); NSLog(@"fLWKisMjSombI"); NSLog(@"kxQBagumeIJMNqUidZthXGjSoLR0TlEvzsYFbKy"); NSLog(@"mtCWy6LQUp12HIFlnAY"); NSLog(@"jA3MSRhKgOpENaHTe0tfGJy5"); NSLog(@"VhXxL0Ki7U28gzsoNHOnG6AWT1w3qS94mYjdBPt"); NSLog(@"CnbudztoWTGaU0yRj15"); NSLog(@"8mDlzp1csqBUyaejEMtLh"); NSLog(@"ukb2jMFYvEychBX6HxDmJTp9VZ8Ssiqt"); NSLog(@"gvFD6mqK9LB8bE2yIadVJtGspczTjw0eN4n3UMo"); NSLog(@"nNKJjqSGECxP7hF3842RMwg1"); } @end