在项目中,点击某个按钮需要整个屏幕用阴影覆盖,点击阴影后阴影消失。因为阴影是个UIView,所以需要给阴影加上点击事件。
以UIView类型的self.baseView为例:
首先设定UIView(或其子类)为可交互的:
1
self.baseView.userInteractionEnabled = YES;
这里要说明一下,UIImageView和UILabel默认的userInteractionEnabled为NO,而UIView默认为YES。
添加tap手势:
1
2//tap手势
UITapGestureRecognizer* singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleSingleTap:)];将手势添加至需要相应的view中
1
[self.baseView addGestureRecognizer:singleTap];
执行触发的方法:
1
2
3-(void)handleSingleTap:(UITapGestureRecognizer *)sender{
//在这里写触发事件
}默认为单击触发事件:
设置手指个数:
1
[handleSingleTap setNumberOfTapsRequired:1];
获取是哪个View触发了此方法:
1
sender.view ;