Он изменяется на их родной клавиатуре /emoji-плате, в зависимости от того, какой из них открыт. Я думал, что это изменит цвет автоматически на основе UIInputViewController, однако это не происходит с пользовательскими расширениями клавиатуры:
Как изменить цвет нижнего края на iPhone X программно?
Ответ 1
Одна вещь, которую вы можете сделать, чтобы решить эту проблему. Измените backgroundcolor вашего ViewController View для home indicator. И установите status bar appearance отдельно с помощью coding в соответствии с вашими потребностями.
Это изменит ваш home indicator, status bar color плюс safe area до Chocolate color, добавит separate view в safe area для вашего другого design, поскольку я добавил yellow.
Если вам нужен другой цвет для status bar, вызовите его где-нибудь из viewDidLoad с viewDidLoad color -
func setStatusBarBackgroundColor(color: UIColor) {
guard let statusBar = UIApplication.shared.value(forKeyPath: "statusBarWindow.statusBar") as? UIView else { return }
statusBar.backgroundColor = color
}
Помимо этого, вы не сможете делать никаких других изменений appearance, по крайней мере пока, пока яблоко не обеспечит какой-либо способ контроля appearance вида home indicator. позволь мне показать тебе.
Это доступность баров, где вы можете контролировать appearance. Нет home indicator bar Apple, которая предусматривает ее изменение.
Это единственные бары, которые вы можете контролировать внешний вид -
Навигационные бары
Поиск баров
Базы статуса
Tab Bars
Инструментальные панели
Реферальная ссылка - Руководство по интерфейсу iPhone-X
Ответ 2
Если вы хотите использовать другой цвет фона для макета, который отличается с верхним и нижним краями, или хотите сохранить цвет фона строки состояния при переключении приложений, вы можете попробовать добавить два разных вида с высотой 50 или более (pt) для другого цвета фона. в каждом макете перо Один ограничивает выравнивание по нижней части верхней части безопасной области, другой ограничивает выравнивание по верхней части нижней части безопасной области, а затем делает IBOutlet ссылку на эти два представления для программной установки backgroundColor в коде.





