将子视图带到UIVisualEffect视图的前面?

时间:2016-11-19 01:45:41

标签: swift subview uivisualeffectview

我的屏幕顶部/底部有一个视图模糊的视图。在视图的上方我想要显示我的按钮没有模糊,所以我认为按钮需要在模糊视图的顶部。

在viewDidLoad我运行此代码:

if !UIAccessibilityIsReduceTransparencyEnabled() {
    self.blurOutletTop.backgroundColor = UIColor.clear
    self.blueOutletBot.backgroundColor = UIColor.clear
    let blurEffect = UIBlurEffect(style: UIBlurEffectStyle.dark)
    let blurEffectView = UIVisualEffectView(effect: blurEffect)
    let blurEffectView2 = UIVisualEffectView(effect: blurEffect)
    //always fill the view
    blurEffectView.frame = blurOutletTop.frame //self.view.bounds
    blurEffectView2.frame = blueOutletBot.frame
    blurEffectView.autoresizingMask = [.flexibleWidth, .flexibleHeight]



    self.view.addSubview(blurEffectView)
    self.view.addSubview(blurEffectView2)

    logoOutlet.bringSubview(toFront: self.view) //This is where my issue is


} else {
    blurOutletTop.backgroundColor = UIColor.black
    blueOutletBot.backgroundColor = UIColor.black
}

所以这使得我的上下两个视图模糊不清。在我遇到问题的地方,我试图让我的logoOutlet面向模糊的视图,因此它不会变得模糊。我尝试将它添加到blurrEffectView,blurOutletTop视图和self.view的前面,一切都有相同的效果。

我不会假设一个不在模糊视图后面的按钮会受模糊影响。我如何让它工作?我甚至无法按下现在位于视图下方的按钮,因此将其置于前面似乎无法正常工作。 (logoOutlet是按钮的插座)。

编辑:我也尝试将插座的zPosition设置为9999,没有变化。

0 个答案:

没有答案