第一种方式:self.tableView.keyboardDismissMode =UIScrollViewKeyboardDismissModeOnDrag;
其中keyboardDismissMode,是UIScrollView的属性,
第二种方式:
UITapGestureRecognizer *tableViewTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(Tap)];
tableViewTap.cancelsTouchesInView = NO;
[self.tableView addGestureRecognizer:tableViewTap];
//tap的cancelsTouchesInView方法,官方描述是“A Boolean value affecting whether touches are delivered to a view when a gesture is recognized.”也就是说,可以通过设置这个布尔值,来设置手势被识别时触摸事件是否被传送到视图。
当值为YES的时候,系统会识别手势,并取消触摸事件;为NO的时候,手势识别之后,系统将触发触摸事件。
- (void)Tap{
//知道某个tf //[textField1 resignFirstResponder];
//不清楚哪个textfield
[self.view endEditing:YES];
}
本文介绍两种在iOS应用中使用SwiftUI处理手势识别并关闭键盘的方法。第一种方式利用UIScrollView的keyboardDismissMode属性,设置为onDrag模式,实现拖动时自动隐藏键盘。第二种方式通过添加UITapGestureRecognizer手势识别器,当手势被识别时,调用view的endEditing方法关闭所有活跃的textField。文章详细解释了cancelsTouchesInView属性的作用。
1667

被折叠的 条评论
为什么被折叠?



