iOS按鈕點擊的頻率 防止按鈕連續點擊時重復執行按鈕的點擊方法
在我們實際開發中,會遇到一些需要點擊按鈕執行相應方法的操作,特別是點擊按鈕進入一個網絡請求,得等上一個請求得到響應后再執行第二次按鈕的響應,這時就需要對按鈕加一個bool值,來判斷上一次事件的一個狀態。
直接上代碼
....
@property (nonatomic,assign) BOOL hasLiked;
....
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
self.hasLiked = YES;
}
- (void)btnClick:(UIButton *)button
{
__weak VSwiperViewController *weakSelf = self;
if (button.tag == 500) {
NSInteger userAccountScore = [[VUserInfoEntityManager sharedManager] getPrivateUserInfo].score;
if (userAccountScore <_fpzGiftprice && self.hasLiked == YES) { // 點擊的時候判斷hasLiked
self.hasLiked = NO;// 執行彈框前設置
[weakSelf showNotEnoughCoinsAlertView];
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.25 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
weakSelf.hasLiked = YES; //彈框完成后延時0.25秒在設置
});
}
}
