Он изменяется на их родной клавиатуре /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 в коде.