UITableView contenu chevauche Barre d'État lorsque UISearchBar est active

J'ai un UITableViewController avec un UISearchBar et UISearchDisplayController. Qui existe à l'intérieur d'un Conteneur de Vue dans un UIViewController qui est dans un UINavigationController. J'ai fait cette image pour décrire la structure:

UITableView contenu chevauche Barre d'État lorsque UISearchBar est active

C'est ce qu'il ressemble vraiment:

UITableView contenu chevauche Barre d'État lorsque UISearchBar est active

Quand je tape sur la Barre de Recherche, j'ai pour masquer la Barre de navigation. Normalement, cela devrait se produire sur son propre, mais depuis mon UITableViewController est à l'intérieur d'un Conteneur de Vue, je dois le gérer que le changement moi-même. C'est à quoi il ressemble ensuite, notez que la Barre d'État est blanc parce que la Barre de navigation est blanc, même s'il est Caché pour le moment.

UITableView contenu chevauche Barre d'État lorsque UISearchBar est active

Une fois que je commence à taper dans certains texte de la recherche, les résultats s'affichent. Si je défilement de ces résultats à la hausse, ils passent en dessous de la Barre de Recherche, mais ils se chevauchent la barre d'État, ce qui est très attrayant.

UITableView contenu chevauche Barre d'État lorsque UISearchBar est active

Si le Conteneur point de Vue n'est pas impliqué dans l'affaire, tout cela fonctionne comme prévu et le contenu de la table passe sous la Barre d'État, mais avec la ContainerView impliqués, le texte du tableau et de la barre d'état entrent en collision.

Comment puis-je obtenir le texte de passer sous la Barre d'État comme normal?

InformationsquelleAutor Kenny Wyland | 2014-04-17