UIScrollView点击事件

为什么80%的码农都做不了架构师?>>>   hot3.png

为UIScrollView添加点击事件,从而实现scrollview上的点击背景退出编辑状态。

直接代码呈上:

一、先要支持协议 UIGestureRecognizerDelegate

二、为你需要添加点击事件的scrollview添加点击手势

//srcollView添加点击响应
   
UITapGestureRecognizer *sigleTapRecognizer = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(clickBackView)];
    sigleTapRecognizer.
delegate=self;
    sigleTapRecognizer.
numberOfTapsRequired = 1;

    [_baseScrollView addGestureRecognizer:sigleTapRecognizer];

三、点击后的处理-----这里是点击scrollview上空白处才进行处理

//点击背景取消所有编辑状态

-(void)clickBackView
{
   
NSLog(@"点了一下背景");
    [
_baseScrollView endEditing:YES];
}

#pragma mark UIGestureRecognizerDelegate
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
{
   
// 输出点击的view的类名
   
NSLog(@"%@", NSStringFromClass([touch.view class]));
   
   
// 若为ScrollView的点击事件才响应,scrollview上的UIButton、UILabel啥的点了也不会进哦
   
if ([NSStringFromClass([touch.view class]) isEqualToString:@"UIScrollView"]) {
       
return YES;
    }
   
return  NO;

}


转载于:https://my.oschina.net/lxzero/blog/632267

你可能感兴趣的:(UIScrollView点击事件)