I have an IBOutlet in ViewController.swift called backgroundView
class ViewController: UIViewController, SideBarDelegate {
@IBOutlet weak var backgroundView: UIView!
And I want to use this IBOutlet on SideBar.swift
@objc protocol SideBarDelegate{
func sideBarDidSelectButtonAtIndex(index:Int)
optional func sideBarWillClose()
optional func sideBarWillOpen()
}
class SideBar: NSObject, SideBarTableViewControllerDelegate {
func handleSwipe(recognizer:UISwipeGestureRecognizer){
let bgv = ViewController()
if recognizer.direction == UISwipeGestureRecognizerDirection.Right {
showSideBar(false)
delegate?.sideBarWillClose?()
let blurEffect = UIBlurEffect(style: UIBlurEffectStyle.Light)
let blurView = UIVisualEffectView(effect: blurEffect)
blurView.frame = bgv.backgroundView.bounds
bgv.backgroundView.addSubview(blurView)
} else {
showSideBar(true)
delegate?.sideBarWillOpen?()
}
}
But when the sidebar is displayed, the background does not blur. What's wrong?
source
share