IOS7 barre d'État afficher/masquer sur sélectionner les contrôleurs
Je voudrais afficher et de masquer la barre d'État sur certains contrôleurs. Est-ce possible ou est-il plus d'un app réglage.
J'ai vu beaucoup de messages/questions sur le plist mise à jour:
View controller-based status bar appearance - NO
Si c'est terminé ce contrôle est alors donnée?
Je suis à la recherche pour afficher la barre d'état sur l'écran principal de l'application. Mais par exemple sur un côté (diapo) menu je le voudrais de ne pas le montrer, est-ce possible? Cela peut-il être changé de l'IB ou le code?
EDIT --
Je suis à l'aide d'un https://github.com/edgecase/ECSlidingViewController mise en œuvre.
Le contrôleur principal (affichage de la première page) devrait afficher la barre d'État, mais le menu de gauche contrôleur quand il les lames doivent pas.
Je crois que le problème est qu'ils siègent tous deux au sein de la même racine contrôleur (glissement de-vue-contrôleur) de sorte qu'il est difficile à remplir.
Idéalement si l'écran d'accueil (page principale) pourrait prendre la barre d'état lorsque les diapositives qui serait mieux.
- Double Possible de Comment masquer une barre d'état dans iOS?
Vous devez vous connecter pour publier un commentaire.
Plist réglage
"View controller-based status bar appearance"
contrôle uniquement si une per-contrôleur en fonction de réglage doit être appliqué sur iOS 7.Si vous définissez cette plist option sur NON, vous devez manuellement activer et désactiver la barre d'état comme (comme il l'a été jusqu'à iOS 6):
Si vous définissez cette plist option OUI, vous pouvez ajouter cette méthode pour chacun de vos viewControllers pour définir la barre d'état de façon indépendante pour chaque contrôleur (esp. bien si vous avez une puce sous-classe du système de viewControllers)
Edit:
il existe deux méthodes qui sont d'intérêt si vous optez dans le nouveau viewController d'état basé sur l'apparence de la barre -
Forcer une mise à jour de la barre d'état avec:
Si vous avez imbriqué des contrôleurs (par exemple, un contentViewController dans un TabBarController sous-classe, votre TabBarController sous-classe peut se demander c'est courant childViewController et de l'avant de ce paramètre. Je pense que dans votre cas particulier qui pourrait être utile:
Sur iOS 7 et plus tard, de mettre en œuvre
-prefersStatusBarHidden
, par exemple dans unUIViewController
qui doit masquer la barre d'état:La valeur par défaut est
NO
.Swift 3:
Vous pouvez également afficher/masquer la barre d'état dans un bloc d'animation, en mettant l'animation de code à l'intérieur de didSet propriété de la variable qui indique si elle doit être affichée ou masquée. Lorsque vous définissez une nouvelle valeur pour le
statusBarHidden
Bool, cela déclenche automatiquement l'animation de la mise à jour de la barre d'état pendant la durée que vous avez choisie.Swift version de Mojo66's réponse: