iOS 11 SearchDisplayController показывает черную строку состояния

Я знаю, что SearchDisplayController устарел, но Storyboard по-прежнему поддерживает его, и это простой способ представить tableViewController поверх вашего контроллера представления. Я использовал это, и я все еще предпочел бы использовать это. И в iOS 11, когда я запускаю свое приложение, строка состояния SearchDisplayController. после того, как панель поиска будет сфокусирована, будет ЧЕРНАЯ высота. Кто-нибудь знает, как решить эту ошибку? Также, если вы понимаете, поля поисковика отключены. Я использую панель поиска iOS 11 по умолчанию. Ниже прилагается скриншот:

посмотрите на пустое черное пространство строки состояния

2 ответа

Вы пытались установить для свойства extendedLayoutIncludesOpaqueBars значение true?

searchDisplayController.extendedLayoutIncludesOpaqueBars = true

На самом деле это не лучшее решение, но оно работает для изменения цвета строки состояния.

if let statusBar = UIApplication.shared.value(forKeyPath: "statusBarWindow.statusBar") as? UIView {
    statusBar.backgroundColor = //YOUR COLOR HERE
  }

Имейте в виду, что это повлияет на все приложение. Если вам нужно изменить только некоторые виды, сохраните предыдущий цвет, чтобы восстановить его.

С уважением.

Другие вопросы по тегам