如何从iOS中的弹出视图中删除模糊效果?

时间:2016-11-06 08:53:48

标签: ios swift uikit

我在我的应用中显示UIPopoverView,我希望它具有透明色,但没有任何模糊效果。如果我设置了popoverPresentationController.backgroundColor = UIColor.clear,我可以看到模糊效果就在那里,即使没有颜色。

有人知道如何消除模糊效果吗?

如果有帮助,请参阅我的prepareForSegue:

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    if segue.identifier != nil {
        if segue.identifier! == "toSetTags" {
            if let destination = segue.destination as? SetTagsViewController {
                if let controller = destination.popoverPresentationController {
                    destination.preferredContentSize = CGSize(width: self.view.bounds.width, height: self.view.bounds.height / 2)

                    controller.barButtonItem = self.navigationItem.rightBarButtonItem
                    controller.backgroundColor = UIColor.clear
                    controller.permittedArrowDirections = .any
                    controller.delegate = self

                }
            }
        }
    }
}

2 个答案:

答案 0 :(得分:1)

试试这个:

popoverPresentationController.contentViewController.view.alpha = 0

答案 1 :(得分:0)

请将代码添加到AppDelegate.swift文件或应用初始化的任何位置。

    let appearance = UIVisualEffectView.appearance(whenContainedInInstancesOf: [NSClassFromString("_UIPopoverStandardChromeView")! as! UIAppearanceContainer.Type])
    appearance.effect = UIVisualEffect()