How to change the bottom edge color on the iPhone X programmatically?

25,257

One thing you can do to solve this. Change backgroundcolor of your ViewController's View for home indicator. And set status bar appearance separately through coding as per your needs.

This will change your home indicator, status bar color plus a safe area to Chocolate color, Add separate view in safe area for your other design, as I've added yellow.

enter image description hereenter image description here

enter image description here

If you want different color for your status bar, call it somewhere from viewDidLoad with color you want -

func setStatusBarBackgroundColor(color: UIColor) {

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

enter image description here

Apart from this, You won't be able to do any other changes in appearance, at least for now till apple provides any way to control appearance of home indicator. let me show you.

enter image description here

These are the availability of bars, where you can control appearance of it. There is no home indicator bar option Apple has provide for it's alteration.

These are the only bars you can control appearance -
Navigation Bars
Search Bars
Status Bars
Tab Bars
Tool Bars

Referral Link - iPhone-X Interface Guidelines

Share:
25,257
VDog
Author by

VDog

Updated on July 08, 2020

Comments

  • VDog
    VDog almost 4 years

    It changes on their native keyboard/emoji board, depending which of the two are open. I thought it would change the color automatically based on UIInputViewController, however it is not occurring with custom keyboard extensions:

    enter image description here