今天測試給我提了一個需求,就是在作用戶篩選的時候,點擊空白區域,回收篩選列表,我用了手勢UITapGestureRecognizer,可是這時就出現了問題,由於列表是動態添加的,因此不能指定空白區域的frame,而且致使了UITableView的didSelectRowAtIndexPath方法不響應,經過百度,我發現原來是UITapGestureRecognizer的didSelectRowAtIndexPath的響應。測試
解決方法:class
#pragma mark - UIGestureRecognizerDelegate百度
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch方法
{touch
NSLog(@"gestureRecognizer = %@",NSStringFromClass([touch.view class]));di
if ([NSStringFromClass([touch.view class]) isEqualToString:@"UIView"])view
{vi
return NO;co
}return
else if ([NSStringFromClass([touch.view class]) isEqualToString:@"InvestDetailSortButton"])
{
return NO;
}
return YES;
}
經過打印,找到能點擊的區域的類名,經過類名來區分,這樣就能夠了。