从popoverPresentationController导航到新的ViewController
问题描述:
我有两个viewCcontroller,FirstViewController和SecondViewController。现在我在FirstViewController中显示了一个popoverpresentationcontroller,它有一个按钮,它包含几个用户输入的textFields。现在,一旦按钮被点击,我想导航到SecondViewController并传递数据。但我无法导航到第二个视图控制器。如果我从popoverpresentationcontroller的按钮使用segue到SecondViewController,它会成功导航,但我想通过编程来实现。有关如何做到这一点的任何帮助?从popoverPresentationController导航到新的ViewController
这是我的按钮,单击代码
@IBAction func goTo(_ sender: UIButton) {
let storyBoard = UIStoryboard(name: "Main", bundle: nil)
let destination = storyBoard.instantiateViewController(withIdentifier: "SecondViewController") as! SecondViewController
destination.flag = flag
sender: sender)
self.navigationController?.pushViewController(destination, animated: true)
}
}
}
答
你不能浏览,因为有呈现视图控制器
上没有navigation controller
所以,你首先必须添加navigation controller
然后就可以进行导航。
let nav1 = UINavigationController()
nav1.viewControllers = [self]
nav1.pushViewController(child, animated: true)
答
我只是清理你的代码。
@IBAction func goTo(_ sender: UIButton) {
let destinationViewController = storyboard?.instantiateViewController(withIdentifier: "SecondViewController") as! SecondViewController
destinationViewController.flag = flag
self.navigationController?.pushViewController(destinationViewController, animated: true)
}
也请注意来设置的viewController在Main.storyboard