Comment définir le statut de la barre de contenu de la couleur de blanc sur iOS 7
Mon Application de la couleur d'arrière-plan est noir. Cause, le point de vue est en dessous de la barre d'état sur iOS 7, le contenu de la barre d'état sera difficile à distinguer. Comment fait-on pour changer le statut de la barre de contenu de la couleur au blanc?
J'ai essayé preferredStatusBarStyle
et de plusieurs autres façons, mais a échoué.
Vous devez vous connecter pour publier un commentaire.
Insérer
à
-application:didFinishLaunchingWithOptions:
de l'AppDelegate.m.Note:
UIStatusBarStyleDefault
est la valeur par défaut de la barre d'état de style, il va montrer contenu de noir à la place. Les deuxUIStatusBarStyleBlackTranslucent
&UIStatusBarStyleBlackOpaque
sont déconseillés dans iOS 7.0.Mise à JOUR pour iOS 9:
Comme @ZakariaDarwish mentionné, la méthode
-setStatusBarStyle
est obsolète dans iOS 9. (Note: La question initiale a été posée pour iOS 7 il y a longtemps, et je ne le supporte pas maintenant, la nouvelle solution ci-dessous fonctionne pour moi sous iOS 9, d'où la mise à jour ici).Donc, la seule façon de gauche (au moins pour l'instant) est de mettre en œuvre
-preferredStatusBarStyle
dans votre vue-contrôleur (n'oubliez pas de mettre "- Vue-contrôleur d'état basé sur l'apparence de la barre de" retour à la OUI).Vous pouvez invoquer UIViewController de la méthode d'instance
-setNeedsStatusBarAppearanceUpdate
une fois la valeur modifiée dans-preferredStatusBarStyle
ou-prefersStatusBarHidden
.Il y a aussi deux méthodes
-childViewControllerForStatusBarStyle
&-childViewControllerForStatusBarHidden
pour retourner le style préféré de l'enfant-vue-contrôleur que vous le souhaitez.par exemple, si vous avez utilisé des méthodes ci-dessous
à l'état de l'interrupteur de style bar avant, vous pouvez utiliser l'exemple de code ci-dessous
pour cette solution mise à jour maintenant.
application:didFinishLaunchingWithOptions
n'est pas appelé jusqu'à ce que la charge de l'application, ce sera pas changer la couleur de la barre d'état sur l'écran de lancement.Dans votre *-Info.fichier plist:
Sinon, vous pouvez spécifier le Statut de style de la barre "Noir Opaque" ou "Noir Translucide' dans l'onglet Général de la Cible.(dans Xcode 5.0.1), Mais ils sont obsolètes valeurs.
Je utiliser ce contrôleur principal:
Sur ces deux touches en info.plist
Ici une courte et simple solution pour définir le statut de la barre de couleur Blanc
1) la Première copie cette ligne
View controller-based status bar appearance
dans votre .fichier plist et jeu BooléenNO
;2) Dans votre AppDelegate.m fichier sous didFinishLaunchingWithOptions coller ce
OU ajouter .plist
iOS 9 (obsolète avertissement solution de contournement)
Si votre demande de statut différent de la barre de contenu de la couleur pour chaque vue, contrôleur de la méthode privilégiée pour la mise en œuvre d'
Si vous avez besoin de changer la barre de contenu de la couleur dans le monde à travers l'application puis ajouter les lignes de code suivantes dans votre didFinishLaunchingWithOptions méthode dans AppDelegate
Attendre réglage de la statusBarStyle ne fait rien si votre application utilise la valeur par défaut UIViewController à base de barre d'état système. Pour ce
Set " - Vue-contrôleur d'état basé sur l'apparence de la barre” à PAS dans votre info.fichier de liste de
Juste une remarque, car c'était là. Si vous utilisez un UINavigationController, vous pouvez jeter dans la vue des contrôleurs de
viewDidLoad
méthode:barStyle
est de typeUIBarStyle
qui n'ont pasUIStatusBarStyleLightContent
.De le faire par programmation dans Swift 3 essayez de n'importe où dans votre vue-contrôleur.
J'ai également réglé le plist clé "- Vue-contrôleur d'état basé sur l'apparence de la barre de" sur "OUI".