检测UISearchBar焦点在文本字段

问题描述:

有没有办法检测用户是否点击了搜索栏文本框并且键盘已经出现?检测UISearchBar焦点在文本字段

您的搜索栏代表应该收到一个searchBarTextDidBeginEditing:消息。

如果要实现UISearchBarDelegate,这应该被称为第一种方法是:

- (BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar { 
    //do stuff 
    return YES; 
} 

这里的类参考:

http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UISearchBarDelegate_Protocol/Reference/Reference.html#//apple_ref/occ/intfm/UISearchBarDelegate/searchBarShouldBeginEditing

+2

这并不总是奏效。也就是说,当用户单击搜索栏上的取消按钮(如果它是可见的),则下一次用户单击搜索栏方法searchBarShouldBeginEditing不会被调用。 – Amiramix 2012-05-09 11:43:12

docs

  • searchBarTextDidBeginEditing:
  • searchBarCancelButtonClicked: