Cela ne fonctionne pas toujours. À savoir, lorsque l'utilisateur clique sur le bouton Annuler dans la barre de recherche (s'il est visible) puis la prochaine fois que l'utilisateur clique sur la barre de recherche méthode searchBarShouldBeginEditing n'est pas appelé.
De la docs,
searchBarTextDidBeginEditing:
searchBarCancelButtonClicked:
Si vous êtes à la mise en œuvre de UISearchBarDelegate, la première méthode est appelée:
Voici la classe de référence:
http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UISearchBarDelegate_Protocol/Reference/Reference.html#//apple_ref/occ/intfm/UISearchBarDelegate/searchBarShouldBeginEditing:
Votre barre de recherche délégué doit recevoir un searchBarTextDidBeginEditing: message.