1、计时器
__block int timeout=120;//倒计时时间
dispatch_queue_t queue =dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0);
dispatch_source_t _timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER,0, 0,queue);
dispatch_source_set_timer(_timer,dispatch_walltime(NULL,0),1.0*NSEC_PER_SEC,0); //每秒执行
dispatch_source_set_event_handler(_timer, ^{
if(timeout<=0){//倒计时结束,关闭
dispatch_source_cancel(_timer);
//dispatch_release(_timer);
dispatch_async(dispatch_get_main_queue(), ^{
//设置界面的按钮显示根据自己需求设置
[_codeBtn setTitle:@"免费获取验证码" forState:UIControlStateNormal];
_codeBtn.enabled =YES;
});
}else{
int minutes = timeout /60;
int seconds = timeout %60;
NSString *strTime = [NSStringstringWithFormat:@"%d分%.2d秒后重新获取验证码",minutes, seconds];
dispatch_async(dispatch_get_main_queue(), ^{
//设置界面的按钮显示根据自己需求设置
[_codeBtn setTitle:strTime forState:UIControlStateNormal];
_codeBtn.enabled =NO;
});
timeout--;
}
});
dispatch_resume(_timer);
2、#pragma mark ================ 按照面积由小到大排序
- (NSMutableArray *)sortByAreaBottom:(NSMutableArray *)data
{
NSArray *sortedArray = [data sortedArrayUsingComparator:^NSComparisonResult(id obj1,id obj2){
if ([[obj1objectForKey:@"house_totalarea"]intValue] > [[obj2objectForKey:@"house_totalarea"]intValue]){
returnNSOrderedDescending;
}
if ([[obj1objectForKey:@"house_totalarea"]intValue] < [[obj2objectForKey:@"house_totalarea"]intValue]){
returnNSOrderedAscending;
}
returnNSOrderedSame;
}];
_arrData = [NSMutableArrayarrayWithArray:sortedArray];
return_arrData;
}
3、#pragma mark ================ 按照租金由大到小排序
- (NSMutableArray *)sortByMoneyTop:(NSMutableArray *)data
{
NSArray *sortedArray = [data sortedArrayUsingComparator:^NSComparisonResult(id obj1,id obj2){
if ([[obj1objectForKey:@"house_price"]intValue] < [[obj2objectForKey:@"house_price"]intValue]){
returnNSOrderedDescending;
}
if ([[obj1objectForKey:@"house_price"]intValue] > [[obj2objectForKey:@"house_price"]intValue]){
returnNSOrderedAscending;
}
returnNSOrderedSame;
}];
_arrData = [NSMutableArrayarrayWithArray:sortedArray];
return_arrData;
}