iOS разделяет лист / расширение, не исчезающая строка состояния

У меня есть разделенный лист / расширение, которое по какой-то причине не исчезает в строке состояния (даже если оно затеняет остальную часть экрана). Я включил изображение, чтобы продемонстрировать проблему. Я просто хочу, чтобы весь экран исчез, включая строку состояния. В прошлом у меня была похожая проблема с UIAlertControllers, не исчезающими в строке состояния.

изображение строки состояния не исчезает

3 ответа

Решение

Так как я рассматривал это как проблему всего приложения, я начал искать в своем AppDelegate вместо отдельных контроллеров представления. Я нашел функцию, setStatusBarBackgroundColor(color: UIColor.white), вызвал запуск приложения, который оказался причиной.

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

Честно говоря, я не уверен, почему я написал это, но удаление этого, кажется, решает проблему полностью.

Я думаю, что лучше настроить его только необходимо UIViewControllers (при необходимости) с помощью,

override var preferredStatusBarStyle: UIStatusBarStyle {
    return UIStatusBarStyle.default  //dark content
}

или на воспитание детей UINavigationController, чтобы избежать выше ошибок, которые вы испытали.

Представляете ли вы UIAlertController с анимированным: установлено в true? Я не могу воспроизвести эту проблему с помощью метода buo.showShareSheet():

 let buo = BranchUniversalObject(canonicalIdentifier: "referrer/\(UUID().uuidString)")
        buo.title = "Test"
        buo.contentDescription = "Test"

        let lp: BranchLinkProperties = BranchLinkProperties()
        lp.feature = "referral"
        lp.addControlParam("user_id", withValue: UUID().uuidString)

        buo.showShareSheet(with: lp, andShareText: instructionString, from: self) { (params, success) in

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