I was using the code with swift 2.1
override func viewDidLoad() {
super.viewDidLoad()
if revealViewController() != nil {
menuButton.target = revealViewController()
menuButton.action = "revealToggle:"
view.addGestureRecognizer(self.revealViewController().panGestureRecognizer())
}
}
And now, I'm using Swift3 with:
override func viewDidLoad() {
super.viewDidLoad()
if revealViewController() != nil {
menuButton.target = revealViewController()
menuButton.action = #selector(SWRevealViewController.revealToggle(_:))
view.addGestureRecognizer(self.revealViewController().panGestureRecognizer())
}
}
The codes with the version 2.1 works perfect, but in action revealToggle is not executed in swift3.
Someone has an idea how to solve it?
Here is the solution for SWRevealViewController in Swift 3:
if revealViewController() != nil {
menuButton.target = self.revealViewController()
menuButton.action = #selector((SWRevealViewController.revealToggle) as (SWRevealViewController) -> (Void) -> Void) // Swift 3 fix
view.addGestureRecognizer(self.revealViewController().panGestureRecognizer())
}
Good Luck!
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With