démissionner du clavier lorsqu'il perd le focus sur uisearchbar

Je suis en train de faire un UISearchBar option dans le navigationbar de mon application.
Mon application se compose de plusieurs points de vue et des sous-vues.
J'ai cette mainview qui a 3 autres points de vue sur lui-même. l'une d'elle est vide (pour l'instant), les 2 autres ont tableviews sur eux.

Je veux que mon clavier quand je suis à la recherche cacher quand je suis en train de faire la recherche proprement dite ou quand je touche/cliquez en dehors de la uisearchbar.
Im en utilisant le searchbardelegate.

Im capable de masquer le clavier à l'aide de [barre de recherche resignFirstResponder] de la manière suivante.

  • Quand im appuyant sur la touche retour.
  • Quand je annuler la recherche manuellement
  • Lorsque j'appuie sur une des touches du clavier à la recherche ou de l'annuler.
  • Quand je touche une partie vide de l'écran à l'aide

    - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
    {    
        UITouch *touch = [[event allTouches] anyObject];
        if ([mySearchBar isFirstResponder] && [touch view] != mySearchBar) {
            [mySearchBar resignFirstResponder];
        }
        [super touchesBegan:touches withEvent:event];
    }

Ce que je semble pas être en mesure de faire c'est de répondre à toucher l'un de mes 2 tableviews. Ou quand im remplissage du mainview pour contenir quelque chose de différent entièrement.

J'ai essayé de changer le touchesbegan méthode de démissionner de la barre de recherche lorsque vous touchez l'tableviews mais il n'en a pas fonctionné jusqu'ici.

J'ai essayé plusieurs autres choses trouvées par mon cher ami, cher monsieur. google, mais tout semble être quelque chose d'autre alors j'ai besoin.

N'importe qui ont des idées de ce que je pourrais faire pour résoudre ce problème?

EDIT:
Il apparaît donc que, lors de l'utilisation de points d'arrêt, touchesbegan-méthode répond à la backgroundview mais il ne marche pas répondre quand je touche une des tableviews ou la navigationbar (contenant le uisearchbar).

OriginalL'auteur Totumus Maximus | 2011-09-20