Abhishek
Abhishek

Reputation: 95

How to dismiss popover in swift on button clicked?

I have created popover in which there are two buttons. I want to dismiss popover when button inside popover is clicked.

This is my code: FirstViewController :

 @IBAction func bar_button(_ sender: UIBarButtonItem) {

    let vc = storyboard?.instantiateViewController(withIdentifier: "SecondViewController") as!
    SecondViewController
    vc.preferredContentSize = CGSize(width: 200,height:80)
    let navController = UINavigationController(rootViewController: vc)
    navController.modalPresentationStyle = UIModalPresentationStyle.popover

    let popover = navController.popoverPresentationController
    popover?.delegate = self
    popover?.barButtonItem = sender as! UIBarButtonItem
    self.present(navController, animated: true, completion: nil)

}

SecondViewController :

@IBAction func second_button(_ sender: UIButton) {
    //want to dismiss popover when button clicked
      }
@IBAction func second_button(_ sender: UIButton) {
   //want to dismiss popover when button clicked
      }

Upvotes: 3

Views: 4097

Answers (1)

Bharath
Bharath

Reputation: 2114

Call

dismiss(animated: true, completion: nil)

inside those methods, This will dismiss the presented popover.

Upvotes: 6

Related Questions