web-dev-qa-db-fra.com

Comment modifier la couleur de bord inférieure sur l'iPhone X par programme?

Cela change sur leur clavier/tableau emoji natif, selon lequel des deux est ouvert. Je pensais que cela changerait la couleur automatiquement en fonction de UIInputViewController, mais cela ne se produit pas avec les extensions de clavier personnalisées:

enter image description here

24
VDog

Une chose que vous pouvez faire pour résoudre ce problème. Changer backgroundcolor de votre ViewController's View pour home indicator. Et mettre status bar appearance séparément par coding selon vos besoins.

Cela va changer votre home indicator, status bar color plus un safe area à Chocolate color, Ajouter separate view dans safe area _ pour votre autre design, comme j’ai ajouté yellow.

enter image description hereenter image description here

enter image description here

Si vous voulez une couleur différente pour votre status bar, appelez-le quelque part de viewDidLoad avec color vous voulez -

func setStatusBarBackgroundColor(color: UIColor) {

        guard let statusBar = UIApplication.shared.value(forKeyPath: "statusBarWindow.statusBar") as? UIView else { return }
        statusBar.backgroundColor = color
    }  

enter image description here

En dehors de cela, vous ne pourrez pas faire d’autres modifications dans appearance, du moins pour le moment jusqu’à Apple permet de contrôler appearance de home indicator. laisse moi te montrer.

enter image description here

C’est la disponibilité des barres, où vous pouvez en contrôler appearance. Il n'y a pas home indicator bar option Apple a prévu son altération.

Ce sont les seules barres que vous pouvez contrôler l'apparence -
Barres de navigation
Barres de recherche
barres d'état
Onglets
barres d'outils

Lien de parrainage - Consignes relatives à l’interface iPhone-X

30
Kiran Jasvanee

Si vous souhaitez utiliser une autre couleur d'arrière-plan pour la mise en page qui diffère par les bords supérieur et inférieur, ou si vous souhaitez conserver la couleur d'arrière-plan de la barre d'état lors du changement d'applications, vous pouvez essayer d'ajouter deux affichages différents de couleur d'arrière-plan différente avec une hauteur de 50 ou plus (pt) dans chaque nib de mise en page. Une contrainte aligne le bas avec le haut de la zone sécurisée, une autre contraint l'alignement haut avec le bas de la zone sécurisée, puis fait référence à IBOutlet de ces deux vues pour définir backgroundColor dans le code par programmation.

0
Shrdi