0

我正在使用 MKMapView 和 UISearchBar 设计一个 iPhone 应用程序,我的问题是我需要在触摸 MapView 或单击取消按钮时使键盘消失。

我尝试使用以下代码:

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{

    [searchBar resignFirstResponder];

}

-(void)searchBarCancelButtonClicked:(UISearchBar *)searchBar
{
     [searchBar resignFirstResponder];
}

但两者都有帮助。

这是屏幕截图:

在此处输入图像描述

所以请有人帮我解决这个问题。提前致谢。

4

2 回答 2

1

在 viewDidLoad

 UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] 
                                           initWithTarget:self
                                           action:@selector(dismissKeyboard)];

    [self.view addGestureRecognizer:tap];

在dismissKeyboard中:

 -(void)dismissKeyboard {
           [SearchBar resignFirstResponder];
    }

(其中 searchBar 是负责键盘的)

于 2013-10-26T05:54:59.213 回答
1

这是不使用 Xib 文件的更新版本:

.h 文件:

在此处输入图像描述

.m 文件:

在此处输入图像描述

希望这能给你一个见解。

于 2013-10-26T06:24:17.083 回答