iOS разделяет лист / расширение, не исчезающая строка состояния - PullRequest
0 голосов
/ 21 октября 2018

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

image of status bar not being faded

Ответы [ 3 ]

0 голосов
/ 03 ноября 2018

Поскольку я рассматривал это как проблему для всего приложения, я начал искать в своем 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
}

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

0 голосов
/ 03 ноября 2018

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

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

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

0 голосов
/ 01 ноября 2018

Представляете ли вы 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

        }
...