[Swift] La couleur de NavigationBar est différente (plus claire) de la couleur spécifiée.

Lorsque j'ai défini la couleur de la barre de navigation avec navigationController? .NavigationBar.barTintColor, elle était différente de la couleur définie.

problème

Image complète

J'ai conçu la couleur de navigation ainsi que la couleur de fond principale. Cependant, lorsque j'ai défini navigationController? .NavigationBar.barTintColor sur la même couleur que l'arrière-plan principal, la navigation réelle affichée était un peu plus claire.

Image du problème

Solution

Cela a été causé par NavigationBar.isTranslucent. NavigationBar.isTranslucent est une valeur qui spécifie la transparence de la barre de navigation. Si vous n'avez pas défini d'image dans la barre de navigation, la valeur par défaut est «true» et elle est translucide. Si vous ne voulez pas être translucide, vous pouvez définir cette valeur sur «false».

** Extrait **

If the navigation bar doesn't have a custom background image, or if any pixel of the background image has an alpha value of less than 1.0, the default value of this property is true. If the background image is completely opaque, the default value of this property is false. If you set this property to true and the custom background image is completely opaque, UIKit applies a system-defined opacity of less than 1.0 to the image. If you set this property to false and the background image is not opaque, UIKit adds an opaque backdrop.

AppDelegate.swift


func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
    UINavigationBar.appearance().isTranslucent = false
    return true
}

UISearchController est affecté lorsque isTranslucent = false

Si vous définissez navigationBar.isTranslucent sur false, la barre de recherche se déplacera vers le bas lorsque vous vous concentrerez sur ʻUISearchController` défini dans la barre de navigation. Dans ce cas, vous pouvez le résoudre en écrivant l'implémentation suivante dans Controller.

Controller.swift


extendedLayoutIncludesOpaqueBars = true

Recommended Posts

[Swift] La couleur de NavigationBar est différente (plus claire) de la couleur spécifiée.
[Swift] Changer la couleur du nœud SCN
Ce qui est différent du langage PHP. [Remarque]
[Vérification de comparaison] Quelle est la différence entre la productivité du développement de l'application Spring Boot et celle du passé?
[Swift] C'est la solution! Illustration de la mise en œuvre du délégué
Je souhaite changer la couleur du menu de contrôle en haut de Liferay 7 / DXP
Développement d'applications iOS: application Timer (9. Personnalisez la couleur de la barre de progression)
[Swift] Obtenez le moment où la valeur de textField est modifiée
[Java] Supprimer le nombre spécifié de caractères à la fin de StringBuilder
'% 02d' Quel est le% de% 2?
[Servlet Java] La route de Senri est aussi la cinquième étape d'une étape
Le contenu de la valeur de retour de executeBatch est différent entre 11g et 12c
[Servlet Java] La route de Senri est aussi la troisième étape de la première étape
À partir de Java9, les constructeurs de classe correspondant aux types primitifs sont marqués comme obsolètes.
[Servlet Java] La route de Senri est aussi la quatrième étape de la première étape
[swift5] Comment changer la couleur de TabBar ou la couleur de l'élément de TabBar avec le code