当我单击搜索或单击取消时,键盘会隐藏。但是我还希望当我单击屏幕上的某个位置时键盘会隐藏起来。我找到了几个文本字段的教程,但我们使用的是搜索栏。
有人可以告诉我该怎么做吗?
谢谢。
尝试这个
在你的 .h 文件中添加 UISearchBar
@property (strong, nonatomic) IBOutlet UISearchBar *searchBar;
在你的 .m 文件中
- (void)viewDidLoad
{
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]
initWithTarget:self
action:@selector(dismissKeyboard)];
[self.view addGestureRecognizer:tap];
}
- (void) dismissKeyboard
{
// add self
[self.searchBar resignFirstResponder];
}
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
[yourTextField1 resignFirstResponder];
[yourTextField2 resignFirstResponder];
[yourTextField3 resignFirstResponder];
[yourSearchBar resignFirstResponder];
//etc
}
但可能您需要检查您在哪里触摸,因为如果您触摸文本输入或搜索框,您不想隐藏键盘。
尝试使用这个
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
[self.view endEditing:YES];
}
您可以添加一个UITapGestureRecognizer
来关闭您的键盘。
- (void)viewDidLoad {
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]
initWithTarget:self
action:@selector(dismissKeyboard)];
[self.view addGestureRecognizer:tap];
}
- (void) dismissKeyboard {
[self.view endEditing:YES];
}