6

当用户按下按钮时,我将 ViewController 称为弹出框。视图应该有黑色背景,alpha 0.5。但是视图显示为一秒钟,然后整个背景在没有 alpha 的情况下变为黑色。知道为什么吗?

那是我的弹出窗口调用:

let popOver = storyboard?.instantiateViewController(withIdentifier: "popOver") as! ViewControllerPopOver
    popOver.modalPresentationStyle = .popover
    self.present(popOver, animated: true, completion: nil)

我正在尝试viewDidLoad()使用以下代码在 popovers 函数中设置背景颜色:

self.view.backgroundColor = UIColor.black.withAlphaComponent(0.5)
4

1 回答 1

6

对于设置modalPresentationStyleoverCurrentContext而不是popover.

let popOver = storyboard?.instantiateViewController(withIdentifier: "popOver") as! ViewControllerPopOver
popOver.modalPresentationStyle = .overCurrentContext
self.present(popOver, animated: true)
于 2017-01-04T11:28:47.767 回答